qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v2 2/4] trace: enforce that every trace-events f


From: Eric Blake
Subject: Re: [Qemu-devel] [PATCH v2 2/4] trace: enforce that every trace-events file has a final newline
Date: Fri, 18 Jan 2019 11:42:14 -0600
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0

On 1/18/19 11:31 AM, Daniel P. Berrangé wrote:
> When generating the trace-events-all file, the build system simply
> concatenates all the individual trace-events files. If any one of those
> files does not have a final newline, the printf format string will have
> the contents of the first line of the next file appended to it, which is
> usually a '#' comment.
> 
> Signed-off-by: Daniel P. Berrangé <address@hidden>
> ---
>  hw/gpio/trace-events          | 2 +-
>  scripts/tracetool/__init__.py | 2 ++
>  2 files changed, 3 insertions(+), 1 deletion(-)
> 

Reviewed-by: Eric Blake <address@hidden>

Does checkpatch and/or patchew flag what are intended to be text files
but which lack a trailing newline?  If not, how hard would it be to get
them to do so?

> diff --git a/hw/gpio/trace-events b/hw/gpio/trace-events
> index cb41a89756..5d4dd200c2 100644
> --- a/hw/gpio/trace-events
> +++ b/hw/gpio/trace-events
> @@ -4,4 +4,4 @@
>  nrf51_gpio_read(uint64_t offset, uint64_t r) "offset 0x%" PRIx64 " value 
> 0x%" PRIx64
>  nrf51_gpio_write(uint64_t offset, uint64_t value) "offset 0x%" PRIx64 " 
> value 0x%" PRIx64
>  nrf51_gpio_set(int64_t line, int64_t value) "line %" PRIi64 " value %" PRIi64
> -nrf51_gpio_update_output_irq(int64_t line, int64_t value) "line %" PRIi64 " 
> value %" PRIi64
> \ No newline at end of file
> +nrf51_gpio_update_output_irq(int64_t line, int64_t value) "line %" PRIi64 " 
> value %" PRIi64
> diff --git a/scripts/tracetool/__init__.py b/scripts/tracetool/__init__.py

Fixes the problem file...

> index 0e3c9e146c..3478ac93ab 100644
> --- a/scripts/tracetool/__init__.py
> +++ b/scripts/tracetool/__init__.py
> @@ -350,6 +350,8 @@ def read_events(fobj, fname):
>  
>      events = []
>      for lineno, line in enumerate(fobj, 1):
> +        if line[-1] != '\n':
> +            raise ValueError("%s does not end with a new line" % fname)

and ensures that no future trace-events files will have the problem,
whether or not checkpatch flags other such files.

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3226
Virtualization:  qemu.org | libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

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