mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Thomas Weißschuh " <thomas@t-8ch.de>
To: Zhangjin Wu <falcon@tinylab.org>
Cc: linux@weissschuh.net, linux-kernel@vger.kernel.org,
	linux-kselftest@vger.kernel.org, shuah@kernel.org,
	tanyuan@tinylab.org, w@1wt.eu
Subject: Re: [PATCH v2 07/10] selftests/nolibc: avoid unused arguments warnings
Date: Tue, 1 Aug 2023 12:17:33 +0200 (GMT+02:00)	[thread overview]
Message-ID: <9c47fc05-ba20-4d90-9d11-840f77c35aaa@t-8ch.de> (raw)
In-Reply-To: <20230801101508.75571-1-falcon@tinylab.org>


Aug 1, 2023 12:15:27 Zhangjin Wu <falcon@tinylab.org>:

> Hi, Thomas
>
>> On 2023-08-01 10:07:28+0200, Willy Tarreau wrote:
>>> On Tue, Aug 01, 2023 at 07:30:14AM +0200, Thomas Weißschuh wrote:
>>>> This warnings will be enabled later so avoid triggering it.
>>>>
>>>> Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
>>>> ---
>>>> tools/testing/selftests/nolibc/nolibc-test.c | 3 ++-
>>>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>>>
>>>> diff --git a/tools/testing/selftests/nolibc/nolibc-test.c b/tools/testing/selftests/nolibc/nolibc-test.c
>>>> index 53a3773c7790..cb17cccd0bc7 100644
>>>> --- a/tools/testing/selftests/nolibc/nolibc-test.c
>>>> +++ b/tools/testing/selftests/nolibc/nolibc-test.c
>>>> @@ -1089,7 +1089,8 @@ static int smash_stack(void)
>>>>     return 1;
>>>> }
>>>>
>>>> -static int run_protection(int min, int max)
>>>> +static int run_protection(int __attribute__((unused)) min,
>>>> +             int __attribute__((unused)) max)
>>>
>>> This one is used to silence -Wunused-parameter I guess.
>>
>> Yep.
>>
>>> It's one of
>>> the rare warnings that I find totally useless in field, because it's
>>> simply against the principle of using function pointers with different
>>> functions having the same interface but different implementations. As
>>> your code evolves you end up with unused on absolutely *all* of the
>>> arguments of *all* such functions, which makes them a real pain to add
>>> and tends to encourage poor practices such as excessive code reuse just
>>> by laziness or boredom. BTW it's one of those that are already disabled
>>> in the kernel and we could very well do the same here.
>>
>> It's indeed unfortunate.
>>
>> As long as we don't have too many of them I would prefer to keep the
>> explicit annotations. While they are ugly we then can still reap the
>> positive aspects of the warning.
>>
>> This is where -std=c89 bites us. With extensions (or C2X) we could also
>> just leave off the argument name to mark it as unused:
>>     run_protection(int, int)
>
> what about further simply ignore the arguments like we did for main(void)?

That doesn't work because it is stored as a function pointer in the testcases array.
And these members all take the two parameters.

  reply	other threads:[~2023-08-01 10:21 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-01  5:30 [PATCH v2 00/10] tools/nolibc: enable compiler warnings Thomas Weißschuh
2023-08-01  5:30 ` [PATCH v2 01/10] tools/nolibc: drop unused variables Thomas Weißschuh
2023-08-01  5:30 ` [PATCH v2 02/10] tools/nolibc: sys: avoid implicit sign cast Thomas Weißschuh
2023-08-01  5:30 ` [PATCH v2 03/10] tools/nolibc: stdint: use int for size_t on 32bit Thomas Weißschuh
2023-08-01  5:30 ` [PATCH v2 04/10] selftests/nolibc: drop unused variables Thomas Weißschuh
2023-08-01  5:30 ` [PATCH v2 05/10] selftests/nolibc: mark test helpers as potentially unused Thomas Weißschuh
2023-08-01  5:30 ` [PATCH v2 06/10] selftests/nolibc: make functions static if possible Thomas Weißschuh
2023-08-01  6:52   ` Willy Tarreau
2023-08-01  7:34     ` Thomas Weißschuh
2023-08-01  8:13       ` Willy Tarreau
2023-08-01  8:50         ` Thomas Weißschuh
2023-08-01  9:13           ` Willy Tarreau
2023-08-01  5:30 ` [PATCH v2 07/10] selftests/nolibc: avoid unused arguments warnings Thomas Weißschuh
2023-08-01  8:07   ` Willy Tarreau
2023-08-01  8:13     ` Thomas Weißschuh
2023-08-01 10:15       ` Zhangjin Wu
2023-08-01 10:17         ` Thomas Weißschuh  [this message]
2023-08-01  5:30 ` [PATCH v2 08/10] selftests/nolibc: avoid sign-compare warnings Thomas Weißschuh
2023-08-01  5:48   ` Zhangjin Wu
2023-08-01  5:57     ` Thomas Weißschuh
2023-08-01  6:50       ` Zhangjin Wu
2023-08-01  5:30 ` [PATCH v2 09/10] selftests/nolibc: test return value of read() in test_vfprintf Thomas Weißschuh
2023-08-01  6:59   ` Willy Tarreau
2023-08-01  7:48     ` Thomas Weißschuh
2023-08-01  5:30 ` [PATCH v2 10/10] selftests/nolibc: enable compiler warnings Thomas Weißschuh
2023-08-02 20:22 ` [PATCH v2 00/10] tools/nolibc: " Willy Tarreau
2023-08-02 21:10   ` Thomas Weißschuh
2023-08-03  2:10     ` Willy Tarreau

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=9c47fc05-ba20-4d90-9d11-840f77c35aaa@t-8ch.de \
    --to=thomas@t-8ch.de \
    --cc=falcon@tinylab.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=linux@weissschuh.net \
    --cc=shuah@kernel.org \
    --cc=tanyuan@tinylab.org \
    --cc=w@1wt.eu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®