Wrap printf calls inside debug macros (DPRINTF) in `if` statement, and change output to stderr as well. This will ensure that printf function will always compile and prevent bitrot of the format strings.
Signed-off-by: Boxuan Li <libox...@connect.hku.hk> --- hw/virtio/virtio-mmio.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/hw/virtio/virtio-mmio.c b/hw/virtio/virtio-mmio.c index 5807aa87fe..693b3c9eb4 100644 --- a/hw/virtio/virtio-mmio.c +++ b/hw/virtio/virtio-mmio.c @@ -28,15 +28,14 @@ #include "hw/virtio/virtio-bus.h" #include "qemu/error-report.h" -/* #define DEBUG_VIRTIO_MMIO */ - -#ifdef DEBUG_VIRTIO_MMIO - -#define DPRINTF(fmt, ...) \ -do { printf("virtio_mmio: " fmt , ## __VA_ARGS__); } while (0) -#else -#define DPRINTF(fmt, ...) do {} while (0) -#endif +#define DEBUG_VIRTIO_MMIO 0 + +#define DPRINTF(fmt, ...) \ + do { \ + if (DEBUG_VIRTIO_MMIO) { \ + fprintf(stderr, "virtio_mmio: " fmt , ## __VA_ARGS__); \ + } \ + } while (0) /* QOM macros */ /* virtio-mmio-bus */ -- 2.13.2