Whamcloud - gitweb
b=22747 Processes stuck waiting for inode I_LOCK bit to clear.
authorDmitry Zogin <dmitry.zoguine@Oracle.com>
Fri, 4 Jun 2010 13:56:12 +0000 (09:56 -0400)
committerJohann Lombardi <johann@sun.com>
Fri, 4 Jun 2010 14:21:20 +0000 (16:21 +0200)
 Use CFS_ALLOC_IO instead of CFS_ALLOC_STD in OBDO_ALLOC

 i=andreas.dilger
 i=johann

lustre/include/obd_class.h
lustre/include/obd_support.h

index 58d0912..f515c35 100644 (file)
@@ -1768,7 +1768,7 @@ extern cfs_mem_cache_t *obdo_cachep;
 
 #define OBDO_ALLOC(ptr)                                                       \
 do {                                                                          \
-        OBD_SLAB_ALLOC_PTR((ptr), obdo_cachep);                               \
+        OBD_SLAB_ALLOC_PTR_GFP((ptr), obdo_cachep, CFS_ALLOC_IO);             \
 } while(0)
 
 #define OBDO_FREE(ptr)                                                        \
index dbd12ff..eeb00a4 100644 (file)
@@ -678,6 +678,8 @@ do {                                                                          \
         OBD_SLAB_ALLOC((ptr), (slab), CFS_ALLOC_STD, sizeof *(ptr))
 #define OBD_SLAB_FREE_PTR(ptr, slab)                                          \
         OBD_SLAB_FREE((ptr), (slab), sizeof *(ptr))
+#define OBD_SLAB_ALLOC_PTR_GFP(ptr, slab, gfp)                                \
+        OBD_SLAB_ALLOC((ptr), (slab), (gfp), sizeof *(ptr))
 
 #define KEY_IS(str) \
         (keylen >= (sizeof(str) - 1) && memcmp(key, str, sizeof(str) - 1) == 0)