[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH for-2.9 v2 00/30] trace type mismatch cleanups
From: |
Eric Blake |
Subject: |
[Qemu-devel] [PATCH for-2.9 v2 00/30] trace type mismatch cleanups |
Date: |
Mon, 13 Mar 2017 14:55:17 -0500 |
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
- [Qemu-devel] [PATCH for-2.9 v2 00/30] trace type mismatch cleanups,
Eric Blake <=
- [Qemu-devel] [PATCH v2 01/30] trace: Fix backwards mirror_yield parameters, Eric Blake, 2017/03/13
- [Qemu-devel] [PATCH v2 02/30] trace: Fix incorrect megasas trace parameters, Eric Blake, 2017/03/13
- [Qemu-devel] [PATCH v2 03/30] trace: Avoid abuse of amdvi_mmio_read, Eric Blake, 2017/03/13
- [Qemu-devel] [PATCH v2 05/30] trace: Fix parameter types in io, Eric Blake, 2017/03/13
- [Qemu-devel] [PATCH v2 06/30] trace: Fix parameter types in migration, Eric Blake, 2017/03/13