]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - include/linux/kmemcheck.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next
[mv-sheeva.git] / include / linux / kmemcheck.h
index dc2fd545db002459a0add2169ed861bec7ecf425..e880d4cf9e223d1e4ca4b8e4ebe655f599a52b16 100644 (file)
@@ -144,10 +144,15 @@ static inline bool kmemcheck_is_obj_initialized(unsigned long addr, size_t size)
        int name##_end[0];
 
 #define kmemcheck_annotate_bitfield(ptr, name)                         \
-       do if (ptr) {                                                   \
-               int _n = (long) &((ptr)->name##_end)                    \
+       do {                                                            \
+               int _n;                                                 \
+                                                                       \
+               if (!ptr)                                               \
+                       break;                                          \
+                                                                       \
+               _n = (long) &((ptr)->name##_end)                        \
                        - (long) &((ptr)->name##_begin);                \
-               BUILD_BUG_ON(_n < 0);                                   \
+               MAYBE_BUILD_BUG_ON(_n < 0);                             \
                                                                        \
                kmemcheck_mark_initialized(&((ptr)->name##_begin), _n); \
        } while (0)