Re: [PATCH 1/1] checkpatch: Ignore <inttypes.h> format macros
From: Petr Vorel
Date: Tue May 12 2026 - 14:49:34 EST
Hi Joe, all,
> On Mon, 2026-05-11 at 23:57 +0200, Petr Vorel wrote:
> > On Mon, 2026-05-11 at 14:12 +0200, Petr Vorel wrote:
> > > > Constants from <inttypes.h> are used only in userspace tools, they are
> > > > from ISO C99, let's don't report it:
> > > > arch/mips/boot/tools/relocs.c:572: CHECK: Avoid CamelCase: <PRIx32>
> > > > arch/s390/tools/relocs.c:52: CHECK: Avoid CamelCase: <PRIu64>
> > > > tools/testing/selftests/mm/vm_util.c:244: CHECK: Avoid CamelCase: <SCNu64>
> > > Nack. This is userspace only and should be tested as such.
> > Thanks for info.
> > Yes, warning is correct for kernel space code. Do I understand correctly that
> > false positives are ok for user space code in the Linux kernel tree?
> > Or is it just because checkpatch.pl has no idea which sources are for user
> > space?
> Hello Petr.
> I suppose another check could be added.
> There is function 'is_userspace' available.
Thanks for pointing out is_userspace() (quite new, from v6.18-rc1, not even in
u-boot vendored checkpatch.pl).
> I don't know if userspace cares at all about camelcase anyway.
I'd say while there are some differences in kernel and user space code,
code style should be mostly the same => userspace should care. Doc [1]
does not mention anything specific about userspace either. Therefore I'd prefer
to send v2 with this change (to v1):
- $var !~ /^(?:PRI|SCN)[dioux][A-Z0-9]+$/ &&
+ (is_userspace($realfile) && $var !~ /^(?:PRI|SCN)[dioux][A-Z0-9]+$/) &&
Other thing, because we vendored checkpatch.pl in LTP which has only userspace
code, I'll have to modify is_userspace() to return always 1. It'd be great if
you acked patch to allow always return 1 based on certain variable (e.g.
CHECKPATCH_FORCE_USERSPACE=1) or even getopt switch (e.g. --userspace). But I
understand if you don't ack it (minimise number of patches on vendored
checkpatch.pl makes updating it easier and there are other user space projects
which suggest to use checkpatch.pl e.g. btrfs-progs, but there is a boundary
what is meaningful to upstream).
Kind regards,
Petr
[1] https://www.kernel.org/doc/html/latest/process/coding-style.html#naming