aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ocfs2/alloc.c
diff options
context:
space:
mode:
authorTao Ma <tao.ma@oracle.com>2008-03-05 03:11:46 -0500
committerMark Fasheh <mfasheh@suse.com>2008-04-18 11:56:10 -0400
commit4d0ddb2ce25db2254d468233d942276ecf40bff8 (patch)
tree6a114da03bb9911de637146f2b24866f1ae96718 /fs/ocfs2/alloc.c
parenta4a4891164d4f6f383cc17e7c90828a7ca6a1146 (diff)
ocfs2: Add inode stealing for ocfs2_reserve_new_inode
Inode allocation is modified to look in other nodes allocators during extreme out of space situations. We retry our own slot when space is freed back to the global bitmap, or whenever we've allocated more than 1024 inodes from another slot. Signed-off-by: Tao Ma <tao.ma@oracle.com> Signed-off-by: Mark Fasheh <mfasheh@suse.com>
Diffstat (limited to 'fs/ocfs2/alloc.c')
-rw-r--r--fs/ocfs2/alloc.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/ocfs2/alloc.c b/fs/ocfs2/alloc.c
index 7d81aa6f5672..a26882144e8f 100644
--- a/fs/ocfs2/alloc.c
+++ b/fs/ocfs2/alloc.c
@@ -5150,6 +5150,8 @@ static void ocfs2_truncate_log_worker(struct work_struct *work)
5150 status = ocfs2_flush_truncate_log(osb); 5150 status = ocfs2_flush_truncate_log(osb);
5151 if (status < 0) 5151 if (status < 0)
5152 mlog_errno(status); 5152 mlog_errno(status);
5153 else
5154 ocfs2_init_inode_steal_slot(osb);
5153 5155
5154 mlog_exit(status); 5156 mlog_exit(status);
5155} 5157}