lib/vsprintf: no_hash_pointers prints all addresses as unhashed
authorTimur Tabi <timur@kernel.org>
Sun, 14 Feb 2021 16:13:48 +0000 (10:13 -0600)
committerPetr Mladek <pmladek@suse.com>
Mon, 15 Feb 2021 10:08:32 +0000 (11:08 +0100)
commit5ead723a20e0447bc7db33dc3070b420e5f80aa6
tree48c75744ea69ab8a453743e41ab00d3c8a642839
parentd9d4de2309cd1721421c6488f1bb5744d2c83a39
lib/vsprintf: no_hash_pointers prints all addresses as unhashed

If the no_hash_pointers command line parameter is set, then
printk("%p") will print pointers as unhashed, which is useful for
debugging purposes.  This change applies to any function that uses
vsprintf, such as print_hex_dump() and seq_buf_printf().

A large warning message is displayed if this option is enabled.
Unhashed pointers expose kernel addresses, which can be a security
risk.

Also update test_printf to skip the hashed pointer tests if the
command-line option is set.

Signed-off-by: Timur Tabi <timur@kernel.org>
Acked-by: Petr Mladek <pmladek@suse.com>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Acked-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Acked-by: Marco Elver <elver@google.com>
Signed-off-by: Petr Mladek <pmladek@suse.com>
Link: https://lore.kernel.org/r/20210214161348.369023-4-timur@kernel.org
Documentation/admin-guide/kernel-parameters.txt
lib/test_printf.c
lib/vsprintf.c