qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PULL 7/9] checkpatch: check trace-events code style


From: Alex Williamson
Subject: Re: [Qemu-devel] [PULL 7/9] checkpatch: check trace-events code style
Date: Tue, 29 Aug 2017 15:34:42 -0600

On Tue,  1 Aug 2017 14:16:16 +0100
Stefan Hajnoczi <address@hidden> wrote:

> From: Vladimir Sementsov-Ogievskiy <address@hidden>
> 
> According to CODING_STYLE, check that in trace-events:
> 1. hex numbers are prefixed with '0x'
> 2. '#' flag of printf is not used
> 3. The exclusion from 1. are period-separated groups of numbers
> 
> Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
> Reviewed-by: Stefan Hajnoczi <address@hidden>
> Message-id: address@hidden
> Signed-off-by: Stefan Hajnoczi <address@hidden>
> ---
>  scripts/checkpatch.pl | 19 +++++++++++++++++++
>  1 file changed, 19 insertions(+)
> 
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> index 4e91122813..fa478074b8 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -1337,6 +1337,25 @@ sub process {
>                       $rpt_cleaners = 1;
>               }
>  
> +# checks for trace-events files
> +             if ($realfile =~ /trace-events$/ && $line =~ /^\+/) {
> +                     if ($rawline =~ /%[-+ 0]*#/) {
> +                             ERROR("Don't use '#' flag of printf format 
> ('%#') in " .
> +                                   "trace-events, use '0x' prefix instead\n" 
> . $herecurr);
> +                     } else {
> +                             my $hex =
> +                                     qr/%[-+ 
> *.0-9]*([hljztL]|ll|hh)?(x|X|"\s*PRI[xX][^"]*"?)/;
> +
> +                             # don't consider groups splitted by [.:/ ], 
> like 2A.20:12ab
> +                             my $tmpline = $rawline =~ s/($hex[.:\/ 
> ])+$hex//gr;
> +
> +                             if ($tmpline =~ /(?<!0x)$hex/) {
> +                                     ERROR("Hex numbers must be prefixed 
> with '0x'\n" .
> +                                           $herecurr);
> +                             }
> +                     }
> +             }
> +
>  # check we are in a valid source file if not then ignore this hunk
>               next if ($realfile !~ /\.(h|c|cpp|s|S|pl|py|sh)$/);
>  

This broke checkpatch.pl for me:

Bareword found where operator expected at ./scripts/checkpatch.pl line 1350, 
near "s/($hex[.:\/ ])+$hex//gr"
syntax error at ./scripts/checkpatch.pl line 1350, near "s/($hex[.:\/ 
])+$hex//gr"
Execution of ./scripts/checkpatch.pl aborted due to compilation errors.

$ perl -v

This is perl, v5.10.1 (*) built for x86_64-linux-thread-multi




reply via email to

[Prev in Thread] Current Thread [Next in Thread]