mbox series

[0/3,v3] add support for never printing hashed addresses

Message ID 20210210213453.1504219-1-timur@kernel.org (mailing list archive)
Headers show
Series add support for never printing hashed addresses | expand

Message

Timur Tabi Feb. 10, 2021, 9:34 p.m. UTC
[The list of email addresses on CC: is getting quite lengthy,
so I hope I've included everyone.]

Although hashing addresses printed via printk does make the
kernel more secure, it interferes with debugging, especially
with some functions like print_hex_dump() which always uses
hashed addresses.

To avoid having to choose between %p and %px, it's easier to
add a kernel command line that treats all %p as %px.  This
encourages developers to use %p more without making debugging
more difficult.

Patches #1 and #2 upgrade the kselftest framework so that
it can report on tests that were skipped outright.  This
is needed for the test_printf module which will now skip
%p hashing tests if hashing is disabled.

Patch #2 upgrades the printf library to check the command
line.  It also updates test_printf().

Full series:

Acked-by: Marco Elver <elver@google.com>

Timur Tabi (3):
  [v3] lib: use KSTM_MODULE_GLOBALS macro in kselftest drivers
  [v3] kselftest: add support for skipped tests
  [v3] lib/vsprintf: debug_never_hash_pointers prints all addresses as
    unhashed

 .../admin-guide/kernel-parameters.txt         | 15 ++++++++
 lib/test_bitmap.c                             |  3 +-
 lib/test_printf.c                             | 12 +++++-
 lib/vsprintf.c                                | 38 ++++++++++++++++++-
 tools/testing/selftests/kselftest_module.h    | 18 ++++++---
 5 files changed, 74 insertions(+), 12 deletions(-)

Comments

Andy Shevchenko Feb. 11, 2021, 10:44 a.m. UTC | #1
On Wed, Feb 10, 2021 at 03:34:50PM -0600, Timur Tabi wrote:
> [The list of email addresses on CC: is getting quite lengthy,
> so I hope I've included everyone.]
> 
> Although hashing addresses printed via printk does make the
> kernel more secure, it interferes with debugging, especially
> with some functions like print_hex_dump() which always uses
> hashed addresses.
> 
> To avoid having to choose between %p and %px, it's easier to
> add a kernel command line that treats all %p as %px.  This
> encourages developers to use %p more without making debugging
> more difficult.
> 
> Patches #1 and #2 upgrade the kselftest framework so that
> it can report on tests that were skipped outright.  This
> is needed for the test_printf module which will now skip
> %p hashing tests if hashing is disabled.
> 
> Patch #2 upgrades the printf library to check the command
> line.  It also updates test_printf().

Side note to the future contributions.

> Full series:
> 
> Acked-by: Marco Elver <elver@google.com>

That's what you usually add to each patch in the series individually.
You may use simple oneliner for this, i.e. `git filter-branch --msg-filter ...`