Re: [PATCH v3] selftests/damon: suppress compiler warnings for huge_count_read_write
From: Yuanchu Xie
Date: Wed May 04 2022 - 18:12:37 EST
Hi SeongJae,
On Wed, May 4, 2022 at 11:45 AM SeongJae Park <sj@xxxxxxxxxx> wrote:
>
> Hi Yuanchu,
>
> On Wed, 4 May 2022 18:29:08 +0000 Yuanchu Xie <yuanchu@xxxxxxxxxx> wrote:
>
> > The test case added in commit db7a347b26fe ("mm/damon/dbgfs:
> > use '__GFP_NOWARN' for user-specified size buffer allocation")
> > intentionally writes and reads with a large count to cause
> > allocation failure and check for kernel warnings. We suppress
> > the compiler warnings for these calls as they work as intended.
> >
> > Signed-off-by: Yuanchu Xie <yuanchu@xxxxxxxxxx>
> > ---
>
> It would be a good practice to mention the changes from the previous version of
> this patch here[1].
>
> [1] https://docs.kernel.org/process/submitting-patches.html#the-canonical-patch-format
>
Thank you, I missed this when trying to figure out how to add
additional comments for a revision.
> > tools/testing/selftests/damon/huge_count_read_write.c | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> > diff --git a/tools/testing/selftests/damon/huge_count_read_write.c b/tools/testing/selftests/damon/huge_count_read_write.c
> > index ad7a6b4cf338..91bd80c75cd9 100644
> > --- a/tools/testing/selftests/damon/huge_count_read_write.c
> > +++ b/tools/testing/selftests/damon/huge_count_read_write.c
> > @@ -2,6 +2,8 @@
> > /*
> > * Author: SeongJae Park <sj@xxxxxxxxxx>
> > */
> > +#pragma GCC diagnostic ignored "-Wstringop-overflow"
> > +#pragma GCC diagnostic ignored "-Wstringop-overread"
>
> I agree that this must be the cleaner way than v2. But, I get below warning
> after applying this:
>
> $ sudo make -C tools/testing/selftests/damon run_tests
> make: Entering directory '/home/sjpark/linux/tools/testing/selftests/damon'
> gcc huge_count_read_write.c -o /home/sjpark/linux/tools/testing/selftests/damon/huge_count_read_write
> huge_count_read_write.c:6:32: warning: unknown option after ‘#pragma GCC diagnostic’ kind [-Wpragmas]
> 6 | #pragma GCC diagnostic ignored "-Wstringop-overread"
> | ^~~~~~~~~~~~~~~~~~~~~
>
> My gcc version is:
>
> $ gcc --version
> gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0
I see, I'm running
$ gcc --version
gcc (Debian 11.2.0-16+build1) 11.2.0
I believe this is a new warning for gcc-11 [1], and somewhat
unfortunate that it results in a warning for gcc-9.4. I'm not sure
what the preference is here.
[1] https://gcc.gnu.org/onlinedocs/gcc-10.3.0/gcc/Warning-Options.html
Thanks,
Yuanchu