[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v7 00/15] Remove some of the fprintf(stderr, "*
From: |
Alistair Francis |
Subject: |
Re: [Qemu-devel] [PATCH v7 00/15] Remove some of the fprintf(stderr, "* |
Date: |
Fri, 2 Feb 2018 11:45:11 -0800 |
On Fri, Feb 2, 2018 at 10:37 AM, Markus Armbruster <address@hidden> wrote:
> This is my attempt to salvage a good part of Alistair's error
> reporting cleanup series
>
> [PATCH v6 00/29] Remove some of the fprintf(stderr, "*
>
> Continue on improving QEMUs logging/error messages by removing more
> fprintf()'s.
>
> Unfortunatley my Coccinelle skills aren't that great so it's all done in
> some nasty regex and a little bit of manual work.
>
> It foundered on the problem that some of its fprintf() to
> error_report() conversions are inappropriate, see
>
> Message-ID: <address@hidden>
> https://lists.gnu.org/archive/html/qemu-devel/2017-12/msg04961.html
>
> Alistair didn't feel like checking about one hundred conversions by
> hand, which is understandable. But letting the work go to waste would
> be a shame, so I wrote an AWK script (see below) to extract a common
> kind of obviously good conversions: the ones where the fprintf() is
> followed by exit(). Judging from the diffstat, this salvages more
> than half of his conversion work.
>
> v7:
> * Old PATCH 02,03,21 are already in master, drop
> * Conversions not obviously followed by exit() dropped
> Nothing left in old PATCH 06-12,16,17,22, drop
> R-bys dropped
> * Rebased, trivial conflict in the last patch resolved
>
>
> #!/usr/bin/awk -f
>
> hunk && /^\+[ \t]*error_report/ {
> n++
> er_indent = match(substr($0, 2), /[^ \t]/)
> er_nr = NR
> plus = 0
> fatal = 0
> }
>
> hunk && er_indent && /^\+/ {
> plus++
> }
>
> hunk && er_indent && /^[ \t]*exit/ {
> d = NR - er_nr - plus
> if (maxd < d)
> maxd = d
> fatal = 1
> }
>
> hunk && er_indent && match(substr($0, 2), /[^ \t]/) < er_indent {
> if (fatal)
> nf++
> er_indent = 0
> }
>
> hunk && /^[-+ ]/ {
> hunk = hunk "\n" $0
> next
> }
>
> hunk {
> if (n && nf && n != nf)
> print loc, "mixed hunk", n, nf >"/dev/stderr"
> else if (n && !nf)
> print loc, "non-fatal hunk", n, nf >"/dev/stderr"
> else if (!n || nf)
> print hunk
> hunk = ""
> }
>
> /^@@ / {
> hunk = $0
> loc = FILENAME ":" FNR ":"
> n = nf = 0
> next
> }
>
> {
> print
> }
>
> END {
> print "max distance", maxd+0 >"/dev/stderr"
> }
Awesome!
I'm glad this isn't being wasted.
Alistair
>
> Alistair Francis (15):
> audio: Replace AUDIO_FUNC with __func__
> hw/arm: Replace fprintf(stderr, "*\n" with error_report()
> hw/dma: Replace fprintf(stderr, "*\n" with error_report()
> hw/lm32: Replace fprintf(stderr, "*\n" with error_report()
> hw/mips: Replace fprintf(stderr, "*\n" with error_report()
> hw/moxie: Replace fprintf(stderr, "*\n" with error_report()
> hw/openrisc: Replace fprintf(stderr, "*\n" with error_report()
> hw/pci*: Replace fprintf(stderr, "*\n" with error_report()
> hw/ppc: Replace fprintf(stderr, "*\n" with error_report()
> hw/sd: Replace fprintf(stderr, "*\n" with error_report()
> hw/sparc*: Replace fprintf(stderr, "*\n" with error_report()
> hw/timer: Replace fprintf(stderr, "*\n" with error_report()
> hw/xen*: Replace fprintf(stderr, "*\n" with error_report()
> tcg: Replace fprintf(stderr, "*\n" with error_report()
> target: Use qemu_log() instead of fprintf(stderr, ...)
>
> audio/alsaaudio.c | 4 ++--
> audio/audio.c | 40 +++++++++++++++----------------
> audio/audio_int.h | 6 -----
> audio/audio_pt_int.c | 28 +++++++++++-----------
> audio/audio_template.h | 26 ++++++++++----------
> audio/dsoundaudio.c | 2 +-
> audio/mixeng.c | 2 +-
> audio/ossaudio.c | 10 ++++----
> audio/paaudio.c | 56
> ++++++++++++++++++++++----------------------
> audio/sdlaudio.c | 2 +-
> audio/wavaudio.c | 2 +-
> cpus.c | 10 ++++----
> dtc | 2 +-
> exec.c | 6 ++---
> hw/arm/armv7m.c | 2 +-
> hw/arm/boot.c | 16 ++++++-------
> hw/arm/gumstix.c | 13 +++++-----
> hw/arm/mainstone.c | 7 +++---
> hw/arm/musicpal.c | 2 +-
> hw/arm/omap1.c | 5 ++--
> hw/arm/omap2.c | 3 ++-
> hw/arm/omap_sx1.c | 2 +-
> hw/arm/pxa2xx.c | 7 +++---
> hw/arm/vexpress.c | 8 +++----
> hw/arm/z2.c | 6 ++---
> hw/dma/soc_dma.c | 36 ++++++++++++++--------------
> hw/lm32/lm32_boards.c | 7 +++---
> hw/lm32/milkymist.c | 7 +++---
> hw/mips/mips_fulong2e.c | 13 +++++-----
> hw/mips/mips_jazz.c | 4 ++--
> hw/mips/mips_malta.c | 16 ++++++-------
> hw/mips/mips_mipssim.c | 11 ++++-----
> hw/mips/mips_r4k.c | 16 ++++++-------
> hw/moxie/moxiesim.c | 13 +++++-----
> hw/openrisc/openrisc_sim.c | 4 ++--
> hw/pci-host/bonito.c | 6 ++---
> hw/pci/pci.c | 4 ++--
> hw/ppc/e500.c | 16 ++++++-------
> hw/ppc/mac_newworld.c | 2 +-
> hw/ppc/mac_oldworld.c | 2 +-
> hw/ppc/ppc405_boards.c | 15 +++++-------
> hw/ppc/ppc440_bamboo.c | 16 ++++++-------
> hw/ppc/prep.c | 4 ++--
> hw/ppc/virtex_ml507.c | 4 ++--
> hw/sd/sd.c | 7 +++---
> hw/sparc/leon3.c | 16 ++++++-------
> hw/sparc/sun4m.c | 16 ++++++-------
> hw/sparc64/niagara.c | 4 ++--
> hw/sparc64/sun4u.c | 10 ++++----
> hw/timer/xilinx_timer.c | 10 ++++----
> hw/xen/xen-common.c | 5 ++--
> hw/xenpv/xen_machine_pv.c | 9 +++----
> target/cris/translate.c | 2 +-
> target/ppc/translate.c | 36 ++++++++--------------------
> target/sh4/translate.c | 7 ++----
> target/unicore32/translate.c | 2 +-
> vl.c | 2 +-
> 57 files changed, 277 insertions(+), 312 deletions(-)
>
> --
> 2.13.6
>
>
- [Qemu-devel] [PATCH v7 13/15] hw/xen*: Replace fprintf(stderr, "*\n" with error_report(), (continued)
- [Qemu-devel] [PATCH v7 13/15] hw/xen*: Replace fprintf(stderr, "*\n" with error_report(), Markus Armbruster, 2018/02/02
- [Qemu-devel] [PATCH v7 08/15] hw/pci*: Replace fprintf(stderr, "*\n" with error_report(), Markus Armbruster, 2018/02/02
- [Qemu-devel] [PATCH v7 03/15] hw/dma: Replace fprintf(stderr, "*\n" with error_report(), Markus Armbruster, 2018/02/02
- [Qemu-devel] [PATCH v7 02/15] hw/arm: Replace fprintf(stderr, "*\n" with error_report(), Markus Armbruster, 2018/02/02
- [Qemu-devel] [PATCH v7 15/15] target: Use qemu_log() instead of fprintf(stderr, ...), Markus Armbruster, 2018/02/02
- Re: [Qemu-devel] [PATCH v7 00/15] Remove some of the fprintf(stderr, "*,
Alistair Francis <=
- Re: [Qemu-devel] [PATCH v7 00/15] Remove some of the fprintf(stderr, "*, Philippe Mathieu-Daudé, 2018/02/02