Whamcloud - gitweb
LU-7084 obd: correct some OBD allocator macro defines 55/17755/2
authorJohn L. Hammond <john.hammond@intel.com>
Wed, 30 Dec 2015 16:10:41 +0000 (10:10 -0600)
committerOleg Drokin <oleg.drokin@intel.com>
Wed, 6 Jan 2016 01:20:17 +0000 (01:20 +0000)
Use protective parentheses around instances of the GFP mask parameters
in the definitions of __OBD_MALLOC_VERBOSE() and
__OBD_SLAB_ALLOC_VERBOSE() to prevent unexpected expansions.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I0c3307ae488fb4f79a07db8a3b870dbcb609da0b
Reviewed-on: http://review.whamcloud.com/17755
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
lustre/include/obd_support.h

index 5f74f80..80a31df 100644 (file)
@@ -688,8 +688,8 @@ static inline void obd_memory_sub(long size)
 #define __OBD_MALLOC_VERBOSE(ptr, cptab, cpt, size, flags)                   \
 do {                                                                         \
        (ptr) = (cptab) == NULL ?                                             \
-               kmalloc(size, flags | __GFP_ZERO) :                           \
-               cfs_cpt_malloc(cptab, cpt, size, flags | __GFP_ZERO);         \
+               kmalloc(size, (flags) | __GFP_ZERO) :                         \
+               cfs_cpt_malloc(cptab, cpt, size, (flags) | __GFP_ZERO);       \
        if (likely((ptr) != NULL))                                            \
                OBD_ALLOC_POST(ptr, size, "kmalloced");                       \
 } while (0)
@@ -802,10 +802,10 @@ do {                                                                            \
 
 #define __OBD_SLAB_ALLOC_VERBOSE(ptr, slab, cptab, cpt, size, type)          \
 do {                                                                         \
-       LASSERT(ergo((type) != GFP_ATOMIC, !in_interrupt()));         \
+       LASSERT(ergo((type) != GFP_ATOMIC, !in_interrupt()));                 \
        (ptr) = (cptab) == NULL ?                                             \
-               kmem_cache_alloc(slab, type | __GFP_ZERO) :                   \
-               cfs_mem_cache_cpt_alloc(slab, cptab, cpt, type | __GFP_ZERO); \
+               kmem_cache_alloc(slab, (type) | __GFP_ZERO) :                 \
+               cfs_mem_cache_cpt_alloc(slab, cptab, cpt, (type) | __GFP_ZERO); \
        if (likely((ptr)))                                                    \
                OBD_ALLOC_POST(ptr, size, "slab-alloced");                    \
 } while(0)