RE: checkpatch.pl report about "Missing blank line after declarations" in a structure definition

From: Dotan Barak
Date: Mon Aug 04 2014 - 10:50:12 EST


I think that allowing a prefix is reasonable (to allow modules to add more flexibility).
I tried the suggested change and it still didn't work for me.

The following change worked for me:
(?:$Storage\s+)?[A-Z0-9_]*(?:DECLARE|DEFINE)_[A-Z_]*\s*\(|

But, maybe it is better to be even more general and allow:
(?:$Storage\s+)?[A-Z0-9_]*(?:DECLARE|DEFINE)_[ A-Z0-9_]*\s*\(|


Thanks a lot for the quick (and great) response!
Dotan

> -----Original Message-----
> From: Joe Perches [mailto:joe@xxxxxxxxxxx]
> Sent: Monday, August 04, 2014 5:27 PM
> To: Dotan Barak
> Cc: linux-kernel@xxxxxxxxxxxxxxx
> Subject: Re: checkpatch.pl report about "Missing blank line after
> declarations" in a structure definition
>
> On Mon, 2014-08-04 at 14:14 +0000, Dotan Barak wrote:
> > Hi Joe.
> >
> > The patch that you mentioned solved most of the issues, thanks!
> >
> > However, there is still one more warning of this type within a struct
> declaration.
> >
> > # ./checkpatch.pl --file --no-tree ../include/linux/mlx5/driver.h
> >
> > WARNING: Missing a blank line after declarations
> > #508: FILE: ../include/linux/mlx5/driver.h:508:
> > + struct mlx5_uuar_info uuari;
> > + MLX5_DECLARE_DOORBELL_LOCK(cq_uar_lock);
> >
> >
> > <snip start>
> > struct mlx5_priv {
> > char name[MLX5_MAX_NAME_LEN];
> > struct mlx5_eq_table eq_table;
> > struct mlx5_uuar_info uuari;
> > MLX5_DECLARE_DOORBELL_LOCK(cq_uar_lock);
>
> MLX5_DECLARE_DOORBELL is not a "normal" DECLARE macro.
>
> Perhaps the exception for the DECLARE_<FOO> declaration macros in the
> exceptions list:
>
> (?:$Storage\s+)?(?:DECLARE|DEFINE)_[A-Z]+\s*\(|
>
> could be expanded to:
>
> (?:$Storage\s+)?[A-Z0-9_]*(?:DECLARE|DEFINE)_[A-Z]+\s*\(|
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/