[Ocfs2-commits] mfasheh commits r2549 - branches/ocfs2-1.0/fs/ocfs2/cluster

svn-commits at oss.oracle.com svn-commits at oss.oracle.com
Fri Aug 26 13:44:22 CDT 2005


Author: mfasheh
Signed-off-by: jlbec
Date: 2005-08-26 13:44:21 -0500 (Fri, 26 Aug 2005)
New Revision: 2549

Modified:
   branches/ocfs2-1.0/fs/ocfs2/cluster/heartbeat.c
Log:
* backport r2548 from trunk:

    * Change gfp_mask for bio_alloc in o2hb_setup_one_bio. This fixes
      a whole slew of fencing issues we've seen where the previous mask
      would take longer than the heartbeat node down timeout to allocate.

Signed-off-by: jlbec



Modified: branches/ocfs2-1.0/fs/ocfs2/cluster/heartbeat.c
===================================================================
--- branches/ocfs2-1.0/fs/ocfs2/cluster/heartbeat.c	2005-08-26 18:35:20 UTC (rev 2548)
+++ branches/ocfs2-1.0/fs/ocfs2/cluster/heartbeat.c	2005-08-26 18:44:21 UTC (rev 2549)
@@ -244,7 +244,11 @@
 
 	nr_vecs = (num_slots + spp - 1) / spp;
 
-	bio = bio_alloc(GFP_KERNEL, nr_vecs);
+	/* Testing has shown this allocation to take long enough under
+	 * GFP_KERNEL that the local node can get fenced. It would be
+	 * nicest if we could pre-allocate these bios and avoid this
+	 * all together. */
+	bio = bio_alloc(GFP_ATOMIC, nr_vecs);
 	if (!bio) {
 		mlog(ML_ERROR, "Could not alloc slots BIO!\n");
 		bio = ERR_PTR(-ENOMEM);



More information about the Ocfs2-commits mailing list