xive: An extra '0x' prefix when printing hex values in the trace.
Host environment
- Operating system: Arch Linux
- OS/kernel version: 5.13.9
- Architecture: x86_64
- QEMU flavor: qemu-system-ppc64
- QEMU version: QEMU emulator version 6.0.91 (v6.1.0-rc1-87-g2cd9e2bd)
- QEMU command line:
qemu-system-ppc64 -M powernv9 -trace enable=xive_*
Emulated/Virtualized environment
- Operating system: In-built skiboot is sufficient.
- OS/kernel version:
- Architecture: ppc64le
Description of problem
The trace functions corresponding to the functions below print certain parameters with a double "0x" prefix, i.e., with "0x0x".
- xive_source_esb_read
- xive_source_esb_write
- xive_tctx_tm_write
- xive_tctx_tm_read
Steps to reproduce
- Execute the command line on a terminal
- Watch the terminal for the output.
Additional information
Sample output:
xive_end_source_read END 0x0/0xf @0x0x1e0800
xive_source_esb_read @0x0x210c00 IRQ 0x10 val=0x0x1
xive_tctx_tm_read @0x0x10038 sz=1 val=0x0
xive_tctx_tm_write @0x0x10038 sz=1 val=0x80
xive_tctx_tm_read @0x0x10038 sz=1 val=0x80
xive_end_source_read END 0x0/0xf @0x0x1e0800
xive_source_esb_read @0x0x210c00 IRQ 0x10 val=0x0x1
xive_tctx_tm_read @0x0x10038 sz=1 val=0x0
xive_tctx_tm_write @0x0x10038 sz=1 val=0x80
xive_tctx_tm_read @0x0x10038 sz=1 val=0x80
The source lines at fault:
xive_source_esb_read(uint64_t addr, uint32_t srcno, uint64_t value) "@0x0x%"PRIx64" IRQ 0x%x val=0x0x%"PRIx64
xive_source_esb_write(uint64_t addr, uint32_t srcno, uint64_t value) "@0x0x%"PRIx64" IRQ 0x%x val=0x0x%"PRIx64
xive_tctx_tm_write(uint64_t offset, unsigned int size, uint64_t value) "@0x0x%"PRIx64" sz=%d val=0x%" PRIx64
xive_tctx_tm_read(uint64_t offset, unsigned int size, uint64_t value) "@0x0x%"PRIx64" sz=%d val=0x%" PRIx64