Skip to content
  • Hugh Dickins's avatar
    slab: fix DEBUG_SLAB build · c225150b
    Hugh Dickins authored
    
    
    Fix CONFIG_SLAB=y CONFIG_DEBUG_SLAB=y build error and warnings.
    
    Now that ARCH_SLAB_MINALIGN defaults to __alignof__(unsigned long long),
    it is always defined (when slab.h included), but cannot be used in #if:
    mm/slab.c: In function `cache_alloc_debugcheck_after':
    mm/slab.c:3156:5: warning: "__alignof__" is not defined
    mm/slab.c:3156:5: error: missing binary operator before token "("
    make[1]: *** [mm/slab.o] Error 1
    
    So just remove the #if and #endif lines, but then 64-bit build warns:
    mm/slab.c: In function `cache_alloc_debugcheck_after':
    mm/slab.c:3156:6: warning: cast from pointer to integer of different size
    mm/slab.c:3158:10: warning: format `%d' expects type `int', but argument
                                3 has type `long unsigned int'
    Fix those with casts, whatever the actual type of ARCH_SLAB_MINALIGN.
    
    Acked-by: default avatarChristoph Lameter <cl@linux.com>
    Signed-off-by: default avatarHugh Dickins <hughd@google.com>
    Signed-off-by: default avatarPekka Enberg <penberg@kernel.org>
    c225150b