RE: [PATCH v5 4/4] lib/test_printf.c: add test cases for '%pD'

From: Justin He
Date: Tue Jun 22 2021 - 23:28:14 EST


Hi Rasmus

> -----Original Message-----
> From: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
> Sent: Wednesday, June 23, 2021 4:52 AM
> To: Justin He <Justin.He@xxxxxxx>; Petr Mladek <pmladek@xxxxxxxx>; Steven
> Rostedt <rostedt@xxxxxxxxxxx>; Sergey Senozhatsky
> <senozhatsky@xxxxxxxxxxxx>; Andy Shevchenko
> <andriy.shevchenko@xxxxxxxxxxxxxxx>; Jonathan Corbet <corbet@xxxxxxx>;
> Alexander Viro <viro@xxxxxxxxxxxxxxxxxx>; Linus Torvalds <torvalds@linux-
> foundation.org>
> Cc: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>; Eric Biggers
> <ebiggers@xxxxxxxxxx>; Ahmed S. Darwish <a.darwish@xxxxxxxxxxxxx>; linux-
> doc@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; linux-
> fsdevel@xxxxxxxxxxxxxxx; Matthew Wilcox <willy@xxxxxxxxxxxxx>; Christoph
> Hellwig <hch@xxxxxxxxxxxxx>; nd <nd@xxxxxxx>
> Subject: Re: [PATCH v5 4/4] lib/test_printf.c: add test cases for '%pD'
>
> On 22/06/2021 16.06, Jia He wrote:
> > After the behaviour of specifier '%pD' is changed to print the full path
> > of struct file, the related test cases are also updated.
> >
> > Given the full path string of '%pD' is prepended from the end of the
> scratch
> > buffer, the check of "wrote beyond the nul-terminator" should be skipped
> > for '%pD'.
> >
> > Parameterize the new using_scratch_space in __test, do_test to skip the
> > test case mentioned above,
>
> I actually prefer the first suggestion of just having a file-global bool.

Yes, this is my previous proposal, but seems it is not satisfying 😉.

--
Cheers,
Justin (Jia He)


>
> If and when we get other checks that need to be done selectively [e.g.
> "snprintf into a too short buffer produces a prefix of the full string",
> which also came up during this discussion but was ultimately kept]
> depending on the %<whatever> being exercised, we can add a "u32 nocheck"
> with a bunch of bits saying what to elide.
>
> Not insisting either way, just my $0.02.
>