On 07/04/2017 10:44 PM, Joe Perches wrote: > On Tue, 2017-07-04 at 21:29 +0200, Heinrich Schuchardt wrote: >> The U-Boot project uses the same scripts/checkpatch.pl as the Linux >> kernel. I ran upon the problem below when working on U-Boot. But I >> guess it should be fixed in the Linux upstream. >> >> Running checkpatch for this email produces >> WARNING: storage class should be at the beginning of the declaration >> >> This relates to the parameter with asmlinkage. >> >> asmlinkage is at the start of the parameter so I think this a false >> positive. >> >> Signed-off-by: Heinrich.Schuchardt <xypron.g...@gmx.de> >> --- >> >> cmd/bootefi.c | 22 +++++++++++++++++----- >> 1 file changed, 17 insertions(+), 5 deletions(-) >> >> diff --git a/cmd/bootefi.c b/cmd/bootefi.c >> index 771300ee94..4df468307c 100644 >> --- a/cmd/bootefi.c >> +++ b/cmd/bootefi.c >> @@ -147,6 +147,12 @@ static void *copy_fdt(void *fdt) >> return new_fdt; >> } >> >> +static ulong efi_do_enter(void *image_handle, >> + struct efi_system_table *st, asmlinkage ulong (*entry)( >> + void *image_handle, struct efi_system_table *st)) >> +{ >> + return 0; >> +} >> + >> /* >> end >> */ > > Perhaps this? > ------------------------- > > Allow storage class after comma for function pointers. > > Miscellanea: > > o Add missing semicolon after WARN statement > --- > scripts/checkpatch.pl | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl > index 43171ed88115..c7490ab48ce1 100755 > --- a/scripts/checkpatch.pl > +++ b/scripts/checkpatch.pl > @@ -5577,9 +5577,10 @@ sub process { > } > > # Check that the storage class is at the beginning of a declaration > - if ($line =~ /\b$Storage\b/ && $line !~ /^.\s*$Storage\b/) { > + if ($line =~ /\b$Storage\b/ && > + $line !~ /^.\s*(?:.*,\s*)?$Storage\b/) { > WARN("STORAGE_CLASS", > - "storage class should be at the beginning of the > declaration\n" . $herecurr) > + "storage class should be at the beginning of the > declaration\n" . $herecurr); > } > > # check the location of the inline attribute, that it is between >
Thank you. This works for all cases but +static ulong efi_do_enter(ulong asmlinkage (*entry)(void *image_handle, + struct efi_system_table *st)) +{ + return 0; +} + Here I get WARNING: space prohibited between function name and open parenthesis '(' where I would have expected WARNING: storage class should be at the beginning of the declaration Best regards Heinrich Schuchardt _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot