On Thu, 2021-08-19 at 01:27 +0100, Matthew Wilcox wrote: > On Tue, Aug 17, 2021 at 10:31:32PM -0700, Joe Perches wrote: > > Lastly __alloc_size should probably be added to checkpatch > > > > Maybe: > > --- > > scripts/checkpatch.pl | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl [] > > @@ -489,7 +489,8 @@ our $Attribute = qr{ > > ____cacheline_aligned| > > ____cacheline_aligned_in_smp| > > ____cacheline_internodealigned_in_smp| > > - __weak > > + __weak| > > + __alloc_size\s*\(\s*\d+\s*(?:,\s*d+\s*){0,5}\) > > Should probably be added to kernel-doc as well. Any other awful regexes > that need to be changed to understand it? And can we commonise the > regexes that do exist into a perl helper library? probably, but there would need to be some library work done and changes made to both utilities so they could use the same $helpers. And there are several nominally incomplete regexes already in kernel-doc and I'm not at all familiar with kernel-doc. e.g.: kernel-doc has: my $attribute = qr{__attribute__\s*\(\([a-z0-9,_\*\s\(\)]*\)\)}i; but __attribute__ can have quotes like: __attribute__((section("foo"))) and spaces around and and I believe between (( and )) like: __attribute__ ((packed)) so those wouldn't match. The use of parentheses internal to attributes like __align__(8) may not work particularly well either given greedy matching.