Re: [PATCH v3 01/13] scripts: checkpatch: Add __aligned to the list of attribute notes

From: Marcelo Schmitt
Date: Fri Dec 08 2023 - 07:21:21 EST


On 12/07, Joe Perches wrote:
> On Thu, 2023-12-07 at 15:37 -0300, Marcelo Schmitt wrote:
> > Checkpatch presumes attributes marked with __aligned(alignment) are part
> > of a function declaration and throws a warning stating that those
> > compiler attributes should have an identifier name which is not correct.
> > Add __aligned compiler attributes to the list of attribute notes
> > so they don't cause warnings anymore.
> >
> > Signed-off-by: Marcelo Schmitt <marcelo.schmitt@xxxxxxxxxx>
> > ---
> > The patch that would trigger the mentioned checkpatch warning in this series is
> > patch number 12 (iio: adc: Add support for AD7091R-8).
> >
> > scripts/checkpatch.pl | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> > index 25fdb7fda112..e6773ae0ad08 100755
> > --- a/scripts/checkpatch.pl
> > +++ b/scripts/checkpatch.pl
> > @@ -512,6 +512,7 @@ our $Attribute = qr{
> > __ro_after_init|
> > __kprobes|
> > $InitAttribute|
> > + __aligned|
>
> __aligned takes an argument so I think there needs
> to have something like the use of __alloc_size below
> this addition
> __alloc_size\s*\(\s*\d+\s*(?:,\s*\d+\s*)?\)
>
> maybe
>
> __aligned\s*\([^\)]*\)
>
> though even that would work well with most uses it
> would not work with things like
>
> drivers/crypto/inside-secure/safexcel_hash.c: u8 cache[HASH_CACHE_SIZE] __aligned(sizeof(u32));
>

Will think of something that may work for all cases and include in v4.

Thanks