qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH for-2.9 v2 00/30] trace type mismatch cleanups
@ 2017-03-13 19:55 Eric Blake
  2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 01/30] trace: Fix backwards mirror_yield parameters Eric Blake
                   ` (30 more replies)
  0 siblings, 31 replies; 52+ messages in thread
From: Eric Blake @ 2017-03-13 19:55 UTC (permalink / raw)
  To: qemu-devel; +Cc: stefanha

We have a number of tracepoints that mistakenly truncate 64-bit
values into 32-bit printouts, making the trace less useful than
what is fully possible.

Previously posted patch 1 here:
https://lists.gnu.org/archive/html/qemu-devel/2017-03/msg01918.html

At which point I realized the problem may be more pervasive, so I
started a much bigger audit (aided by patch 30 of this series).

Proposing the (bulk of this) series for 2.9.  Patches 1-3 are ready
to go, and definitely belong in 2.9 as bug-fixes; 4-29 can probably
be treated as bug-fixes and included per maintainer discretion, but
may need further tweaks on platforms with different typing setups
than what I tested with (for example, I have not attempted a 32-bit
build, which will likely flag some additional misuse of "%lx" that
should have been "%"PRIx64, and I know that mingw still trips
things up).

Patch 30 is NOT 2.9 material - it has too much risk of causing
compilation failures on platforms with different types, where the
current behavior of just (silently) switching between types allows
compilation (even if it is not accurate traces).  But if we like
the approach, there are enough potential merge-conflict magnets
that the overall series should probably go early into 2.10 (other
than the bug-fixes picked into 2.9), and patch 30 is essential to
keeping us from regressing into future type mismatches.

Eric Blake (30):
  trace: Fix backwards mirror_yield parameters
  trace: Fix incorrect megasas trace parameters
  trace: Avoid abuse of amdvi_mmio_read
  trace: Fix parameter types in block
  trace: Fix parameter types in io
  trace: Fix parameter types in migration
  trace: Fix parameter types in ui
  trace: Fix parameter types in top level
  trace: Fix parameter types in linux-user
  trace: Fix parameter types in hw/acpi
  trace: Fix parameter types in hw/audio
  trace: Fix parameter types in hw/block
  trace: Fix parameter types in hw/char
  trace: Fix parameter types in hw/display
  trace: Fix parameter types in hw/dma
  trace: Fix parameter types in hw/i386
  trace: Fix parameter types in hw/input
  trace: Fix parameter types in hw/intc
  trace: Fix parameter types in hw/isa
  trace: Fix parameter types in hw/misc
  trace: Fix parameter types in hw/net
  trace: Fix parameter types in hw/nvram
  trace: Fix parameter types in hw/ppc
  trace: Fix parameter types in hw/sd
  trace: Fix parameter types in hw/scsi
  trace: Fix parameter types in hw/timer
  trace: Fix parameter types in hw/usb
  trace: Fix parameter types in hw/vfio
  trace: Fix parameter types in hw/virtio
  trace: Force compiler warnings on trace parameter type mismatches

 scripts/tracetool/format/h.py |  13 +++++
 block/mirror.c                |   5 +-
 cpu-exec.c                    |   6 +--
 hw/block/virtio-blk.c         |   4 +-
 hw/char/escc.c                |   4 +-
 hw/i386/amd_iommu.c           |   3 +-
 hw/intc/apic_common.c         |   2 +-
 hw/net/e1000e_core.c          |  10 ++--
 hw/nvram/fw_cfg.c             |   2 +-
 hw/scsi/esp-pci.c             |   2 +-
 hw/scsi/megasas.c             |  14 +++---
 hw/timer/grlib_gptimer.c      |   6 +--
 hw/usb/hcd-ehci.c             |   9 ++--
 hw/usb/hcd-xhci.c             |   4 +-
 hw/vfio/pci.c                 |   3 +-
 io/channel-command.c          |   2 +-
 linux-user/signal.c           | 106 +++++++++++++++++++--------------------
 translate-all.c               |   2 +-
 block/trace-events            |   4 +-
 hw/acpi/trace-events          |   6 +--
 hw/audio/trace-events         |   8 +--
 hw/char/trace-events          |  14 +++---
 hw/display/trace-events       |  20 ++++----
 hw/dma/trace-events           |   8 +--
 hw/i386/trace-events          |   3 +-
 hw/input/trace-events         |   4 +-
 hw/intc/trace-events          |  40 +++++++--------
 hw/isa/trace-events           |   4 +-
 hw/misc/trace-events          |  44 ++++++++--------
 hw/net/trace-events           |  58 ++++++++++-----------
 hw/nvram/trace-events         |   4 +-
 hw/ppc/trace-events           |  16 +++---
 hw/scsi/trace-events          | 114 +++++++++++++++++++++---------------------
 hw/sd/trace-events            |   4 +-
 hw/timer/trace-events         |  14 +++---
 hw/usb/trace-events           |  84 +++++++++++++++----------------
 hw/vfio/trace-events          |  14 +++---
 hw/virtio/trace-events        |   2 +-
 migration/trace-events        |   4 +-
 trace-events                  |   2 +-
 ui/trace-events               |   8 +--
 41 files changed, 347 insertions(+), 329 deletions(-)

-- 
2.9.3

^ permalink raw reply	[flat|nested] 52+ messages in thread

end of thread, other threads:[~2017-03-23 15:23 UTC | newest]

Thread overview: 52+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-03-13 19:55 [Qemu-devel] [PATCH for-2.9 v2 00/30] trace type mismatch cleanups Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 01/30] trace: Fix backwards mirror_yield parameters Eric Blake
2017-03-16  7:36   ` Stefan Hajnoczi
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 02/30] trace: Fix incorrect megasas trace parameters Eric Blake
2017-03-14  6:49   ` Hannes Reinecke
2017-03-16  7:36   ` Stefan Hajnoczi
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 03/30] trace: Avoid abuse of amdvi_mmio_read Eric Blake
2017-03-16  7:36   ` Stefan Hajnoczi
2017-03-23 15:23   ` Stefan Hajnoczi
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 04/30] trace: Fix parameter types in block Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 05/30] trace: Fix parameter types in io Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 06/30] trace: Fix parameter types in migration Eric Blake
2017-03-13 20:07   ` Dr. David Alan Gilbert
2017-03-13 20:18     ` Eric Blake
2017-03-14 11:32       ` Dr. David Alan Gilbert
2017-03-14 14:36         ` Eric Blake
2017-03-15 19:55           ` Eric Blake
2017-03-15 22:33             ` Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 07/30] trace: Fix parameter types in ui Eric Blake
2017-03-14  9:16   ` Gerd Hoffmann
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 08/30] trace: Fix parameter types in top level Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 09/30] trace: Fix parameter types in linux-user Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 10/30] trace: Fix parameter types in hw/acpi Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 11/30] trace: Fix parameter types in hw/audio Eric Blake
2017-03-14  9:16   ` Gerd Hoffmann
2017-03-22 15:10   ` Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 12/30] trace: Fix parameter types in hw/block Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 13/30] trace: Fix parameter types in hw/char Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 14/30] trace: Fix parameter types in hw/display Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 15/30] trace: Fix parameter types in hw/dma Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 16/30] trace: Fix parameter types in hw/i386 Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 17/30] trace: Fix parameter types in hw/input Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 18/30] trace: Fix parameter types in hw/intc Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 19/30] trace: Fix parameter types in hw/isa Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 20/30] trace: Fix parameter types in hw/misc Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 21/30] trace: Fix parameter types in hw/net Eric Blake
2017-03-14  7:21   ` Dmitry Fleytman
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 22/30] trace: Fix parameter types in hw/nvram Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 23/30] trace: Fix parameter types in hw/ppc Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 24/30] trace: Fix parameter types in hw/sd Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 25/30] trace: Fix parameter types in hw/scsi Eric Blake
2017-03-14  6:50   ` Hannes Reinecke
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 26/30] trace: Fix parameter types in hw/timer Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 27/30] trace: Fix parameter types in hw/usb Eric Blake
2017-03-14  9:16   ` Gerd Hoffmann
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 28/30] trace: Fix parameter types in hw/vfio Eric Blake
2017-03-13 19:55 ` [Qemu-devel] [PATCH v2 29/30] trace: Fix parameter types in hw/virtio Eric Blake
2017-03-16  7:45   ` Stefan Hajnoczi
2017-03-13 19:55 ` [Qemu-devel] [RFC PATCH v2 30/30] trace: Force compiler warnings on trace parameter type mismatches Eric Blake
2017-03-15 19:59   ` Eric Blake
2017-03-16  7:28     ` Stefan Hajnoczi
2017-03-13 20:27 ` [Qemu-devel] [PATCH for-2.9 v2 00/30] trace type mismatch cleanups no-reply

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).