Re: [PATCH kselftest/test] kunit: Always print actual pointer values in asserts

From: Brendan Higgins
Date: Wed Mar 25 2020 - 12:34:06 EST


On Tue, Mar 24, 2020 at 8:33 PM David Gow <davidgow@xxxxxxxxxx> wrote:
>
> On Tue, Dec 3, 2019 at 3:44 PM Brendan Higgins
> <brendanhiggins@xxxxxxxxxx> wrote:
> >
> > On Thu, Nov 21, 2019 at 3:51 PM David Gow <davidgow@xxxxxxxxxx> wrote:
> > >
> > > KUnit assertions and expectations will print the values being tested. If
> > > these are pointers (e.g., KUNIT_EXPECT_PTR_EQ(test, a, b)), these
> > > pointers are currently printed with the %pK format specifier, which -- to
> > > prevent information leaks which may compromise, e.g., ASLR -- are often
> > > either hashed or replaced with ____ptrval____ or similar, making debugging
> > > tests difficult.
> > >
> > > By replacing %pK with %px as Documentation/core-api/printk-formats.rst
> > > suggests, we disable this security feature for KUnit assertions and
> > > expectations, allowing the actual pointer values to be printed. Given
> > > that KUnit is not intended for use in production kernels, and the
> > > pointers are only printed on failing tests, this seems like a worthwhile
> > > tradeoff.
> >
> > I agree. However, I also remember that others in the past yelled at me
> > for assuming that KUnit would not be built into production kernels.
> >
> > I feel like +Kees Cook would have a good opinion on this (or will at
> > least CC the right people).
> >
>
> I'm tempted to take the silence as a sign that no-one is upset by
> this. Otherwise, consider this a gentle reminder to file any
> objections you may have. :-)
>
> Otherwise, I've confirmed that this still applies cleanly to the
> latest linux-kselftest/kunit branch, so -- assuming there are no
> last-minute objections -- this ought to be ready to go.

Shuah, can you pick this up for 5.7?