From: WangYuli <wangyuli@uniontech.com>
To: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
Cc: akpm@linux-foundation.org, Liam.Howlett@oracle.com,
vbabka@suse.cz, jannh@google.com, pfalcato@suse.de,
linux-mm@kvack.org, linux-kernel@vger.kernel.org,
niecheng1@uniontech.com, guanwentao@uniontech.com,
Jun Zhan <zhanjun@uniontech.com>,
linux-kbuild@vger.kernel.org
Subject: Re: [PATCH] tools/testing/vma: Fix function parameter declarations for GCC 8.3 compatibility
Date: Thu, 31 Jul 2025 10:55:32 +0800 [thread overview]
Message-ID: <CB890ABC56C2FA67+56b95783-ed70-4744-9fc5-f2d93ddf2c12@uniontech.com> (raw)
In-Reply-To: <e7554f93-03e8-4315-acb7-a55312354485@lucifer.local>
[-- Attachment #1.1.1: Type: text/plain, Size: 2443 bytes --]
Hi Lorenzo Stoakes,
On 2025/7/29 17:06, Lorenzo Stoakes wrote:
> On Tue, Jul 29, 2025 at 04:47:00PM +0800, WangYuli wrote:
>> The Linux kernel's minimum GCC version requirement has been bumped
>> from 4.3 to 8.3, but this tool still fails to compile with GCC 8.3.
> Why people keep reporting this for my VMA test series but _not_ the kernel
> as a whole I don't know.
>
> $ grep "\*);" include/linux/mm.h | wc -l
> 9
>
> ^--- If you use such a compiler, the kernel won't build.
>
> So the bug is whoever is saying a version of gcc that does the below (I'll
> take your word for it that this is in a normal configuraiton) is OK for the
> kernel.
>
> It's clearly not.
>
> Oh just to underline things:
>
> $ find include/linux -name '*.h' | xargs grep "\*);" | wc -l
> 1899
>
> So y'know.
>
>> Older compilers would fail if did not include parameter names in
>> function declarations that contained parameter types; newer compilers
>> are more lenient about this.
> You're using a compiler that won't build linux. Stop it?
>
>> Fix many errors like this:
>> In file included from vma.c:10:
>> vma_internal.h: In function ‘arch_validate_flags’:
>> vma_internal.h:1218:40: error: parameter name omitted
>> static inline bool arch_validate_flags(unsigned long)
>> ^~~~~~~~~~~~~
>> vma.c: In function ‘dummy_close’:
>> vma.c:281:25: error: parameter name omitted
>> static void dummy_close(struct vm_area_struct *)
>> ^~~~~~~~~~~~~~~~~~~~~~~
>>
>> Reported-by: Jun Zhan <zhanjun@uniontech.com>
>> Signed-off-by: WangYuli <wangyuli@uniontech.com>
> NAK.
>
Thanks for the heads-up! I noticed that coding style in the kernel code
as well.
However, GCC 8.3 (which does meet the kernel's compiler version
requirements) can compile the kernel code normally, but it can't compile
vma's test correctly.
Could the issue be related to differences in compilation parameters?
I'll need to spend some time looking into this more closely...
By the way, this coding style has been a GNU C extension until the ISO
C23 standard. So, until the kernel's C language standard is upgraded to
C23 (which seems unlikely to happen anytime soon, perhaps years down the
line), it actually makes sense to modify this style for a practical
purpose...
[ Cc the kbuild list. ]
Thanks,
--
WangYuli
[-- Attachment #1.1.2: OpenPGP public key --]
[-- Type: application/pgp-keys, Size: 645 bytes --]
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 236 bytes --]
next prev parent reply other threads:[~2025-07-31 2:56 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-29 8:47 WangYuli
2025-07-29 9:06 ` Lorenzo Stoakes
2025-07-31 2:55 ` WangYuli [this message]
2025-07-31 10:24 ` Lorenzo Stoakes
2025-07-31 18:13 ` Vlastimil Babka
2025-08-01 5:14 ` Lorenzo Stoakes
2025-08-01 5:57 ` WangYuli
2025-08-01 8:04 ` Vlastimil Babka
2025-08-01 8:50 ` Lorenzo Stoakes
2025-08-01 9:22 ` Vlastimil Babka
2025-08-01 9:26 ` WangYuli
2025-08-01 9:33 ` Lorenzo Stoakes
2025-08-01 9:48 ` Vlastimil Babka
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=CB890ABC56C2FA67+56b95783-ed70-4744-9fc5-f2d93ddf2c12@uniontech.com \
--to=wangyuli@uniontech.com \
--cc=Liam.Howlett@oracle.com \
--cc=akpm@linux-foundation.org \
--cc=guanwentao@uniontech.com \
--cc=jannh@google.com \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=lorenzo.stoakes@oracle.com \
--cc=niecheng1@uniontech.com \
--cc=pfalcato@suse.de \
--cc=vbabka@suse.cz \
--cc=zhanjun@uniontech.com \
/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