]> www.infradead.org Git - users/hch/misc.git/commitdiff
kbuild: uapi: Strip comments before size type check
authorGeert Uytterhoeven <geert@linux-m68k.org>
Mon, 6 Oct 2025 12:33:42 +0000 (14:33 +0200)
committerNathan Chancellor <nathan@kernel.org>
Mon, 6 Oct 2025 18:31:19 +0000 (11:31 -0700)
On m68k, check_sizetypes in headers_check reports:

    ./usr/include/asm/bootinfo-amiga.h:17: found __[us]{8,16,32,64} type without #include <linux/types.h>

This header file does not use any of the Linux-specific integer types,
but merely refers to them from comments, so this is a false positive.
As of commit c3a9d74ee413bdb3 ("kbuild: uapi: upgrade check_sizetypes()
warning to error"), this check was promoted to an error, breaking m68k
all{mod,yes}config builds.

Fix this by stripping simple comments before looking for Linux-specific
integer types.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Reviewed-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Link: https://patch.msgid.link/949f096337e28d50510e970ae3ba3ec9c1342ec0.1759753998.git.geert@linux-m68k.org
[nathan: Adjust comment and remove unnecessary escaping from slashes in
         regex]
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
usr/include/headers_check.pl

index 21c2fb9520e6af2d6ebf2decce69f6eea64efd88..1fbc8785f96e0b8f779b1236aafa19273c46d641 100755 (executable)
@@ -155,6 +155,8 @@ sub check_sizetypes
        if (my $included = ($line =~ /^\s*#\s*include\s+[<"](\S+)[>"]/)[0]) {
                check_include_typesh($included);
        }
+       # strip single-line comments, as types may be referenced within them
+       $line =~ s@/\*.*?\*/@@;
        if ($line =~ m/__[us](8|16|32|64)\b/) {
                printf STDERR "$filename:$lineno: " .
                              "found __[us]{8,16,32,64} type " .