• Stephen Boyd's avatar
    slub: force on no_hash_pointers when slub_debug is enabled · 79270291
    Stephen Boyd authored
    Obscuring the pointers that slub shows when debugging makes for some
    confusing slub debug messages:
    
     Padding overwritten. 0x0000000079f0674a-0x000000000d4dce17
    
    Those addresses are hashed for kernel security reasons.  If we're trying
    to be secure with slub_debug on the commandline we have some big problems
    given that we dump whole chunks of kernel memory to the kernel logs.
    Let's force on the no_hash_pointers commandline flag when slub_debug is on
    the commandline.  This makes slub debug messages more meaningful and if by
    chance a kernel address is in some slub debug object dump we will have a
    better chance of figuring out what went wrong.
    
    Note that we don't use %px in the slub code because we want to reduce the
    number of places that %px is used in the kernel.  This also nicely prints
    a big fat warning at kernel boot if slub_debug is on the commandline so
    that we know that this kernel shouldn't be used on production systems.
    
    [akpm@linux-foundation.org: fix build with CONFIG_SLUB_DEBUG=n]
    
    Link: https://lkml.kernel.org/r/20210601182202.3011020-5-swboyd@chromium.orgSigned-off-by: default avatarStephen Boyd <swboyd@chromium.org>
    Acked-by: default avatarVlastimil Babka <vbabka@suse.cz>
    Acked-by: default avatarPetr Mladek <pmladek@suse.com>
    Cc: Joe Perches <joe@perches.com>
    Cc: Christoph Lameter <cl@linux.com>
    Cc: Pekka Enberg <penberg@kernel.org>
    Cc: David Rientjes <rientjes@google.com>
    Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
    Cc: Muchun Song <songmuchun@bytedance.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    79270291
vsprintf.c 85.9 KB