ocfs2: Don't relink cluster groups when allocating discontig block groups
authorJoel Becker <joel.becker@oracle.com>
Fri, 26 Mar 2010 02:10:08 +0000 (10:10 +0800)
committerTao Ma <tao.ma@oracle.com>
Fri, 26 Mar 2010 02:10:08 +0000 (10:10 +0800)
We don't have enough credits, and the filesystem is in a full state
anyway.

Signed-off-by: Joel Becker <joel.becker@oracle.com>
fs/ocfs2/suballoc.c

index e5403ac..5852a46 100644 (file)
@@ -606,6 +606,14 @@ ocfs2_block_group_alloc_discontig(handle_t *handle,
                goto bail;
        }
 
+       /*
+        * We're going to be grabbing from multiple cluster groups.
+        * We don't have enough credits to relink them all, and the
+        * cluster groups will be staying in cache for the duration of
+        * this operation.
+        */
+       ac->ac_allow_chain_relink = 0;
+
        /* Claim the first region */
        status = ocfs2_block_group_claim_bits(osb, handle, ac, min_bits,
                                              &bit_off, &num_bits);