All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/9] single-binary: hw/virtio
@ 2026-02-03 20:56 Pierrick Bouvier
  2026-02-03 20:56 ` [PATCH v4 1/9] hw/virtio: Constify virtio_is_big_endian() argument Pierrick Bouvier
                   ` (10 more replies)
  0 siblings, 11 replies; 23+ messages in thread
From: Pierrick Bouvier @ 2026-02-03 20:56 UTC (permalink / raw)
  To: qemu-devel
  Cc: Philippe Mathieu-Daudé, qemu-ppc, Stefano Garzarella,
	Pierrick Bouvier, Nicholas Piggin, Michael S. Tsirkin,
	Harsh Prateek Bora

This series eliminates target specifics in hw/virtio and replace them with
runtime functions where needed.

Performance has been measured with this automated fio benchmark, with
original instructions from Stefan [1].

$ git clone https://github.com/pbo-linaro/qemu-linux-stack -b x86_64_io_benchmark
$ cd qemu-linux-stack
$ ./build.sh
$ ./run.sh /path/to/qemu-system-x86_64

[1] https://lore.kernel.org/qemu-devel/20260202185233.GC405548@fedora/

Results are on 20 runs and expressed in kIOPS:
reference: mean=239.2 std_dev=3.48
with_series: mean=238.5 std_dev=3.46

Performance is on par, and within standard deviation.

v4
--

- Include Philippe patches computing once device endianness to skip runtime
  checks on every access.

Philippe Mathieu-Daudé (3):
  hw/virtio: Constify virtio_is_big_endian() argument
  hw/virtio: Introduce VirtIODevice::access_is_big_endian boolean field
  hw/virtio: Use VirtIODevice::access_is_big_endian field

Pierrick Bouvier (6):
  target-info: add target_base_ppc, target_ppc and target_ppc64
  include/hw/virtio/virtio-access.h: remove target specifics define
  include/hw/ppc/spapr: extract SPAPR_MAX_RAM_SLOTS in a new header
  hw/virtio/vhost-user: make compilation unit common
  hw/virtio/virtio-qmp: make compilation unit common
  hw/virtio/: make all compilation units common

 include/hw/ppc/spapr.h            |  8 +---
 include/hw/ppc/spapr_common.h     | 16 +++++++
 include/hw/virtio/virtio-access.h | 50 +++++++++++-----------
 include/hw/virtio/virtio.h        |  7 +++-
 include/qemu/target-info.h        | 21 ++++++++++
 hw/virtio/vhost-user.c            | 11 ++---
 hw/virtio/virtio-qmp.c            | 70 -------------------------------
 hw/virtio/virtio.c                |  5 ++-
 target-info.c                     | 21 ++++++++++
 hw/virtio/meson.build             | 17 ++++----
 10 files changed, 104 insertions(+), 122 deletions(-)
 create mode 100644 include/hw/ppc/spapr_common.h

-- 
2.47.3



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

end of thread, other threads:[~2026-02-06 22:22 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-03 20:56 [PATCH v4 0/9] single-binary: hw/virtio Pierrick Bouvier
2026-02-03 20:56 ` [PATCH v4 1/9] hw/virtio: Constify virtio_is_big_endian() argument Pierrick Bouvier
2026-02-03 20:56 ` [PATCH v4 2/9] hw/virtio: Introduce VirtIODevice::access_is_big_endian boolean field Pierrick Bouvier
2026-02-03 20:56 ` [PATCH v4 3/9] hw/virtio: Use VirtIODevice::access_is_big_endian field Pierrick Bouvier
2026-02-03 22:11   ` Philippe Mathieu-Daudé
2026-02-03 22:38     ` BALATON Zoltan
2026-02-03 22:45       ` Pierrick Bouvier
2026-02-06  4:37   ` Pierrick Bouvier
2026-02-03 20:56 ` [PATCH v4 4/9] target-info: add target_base_ppc, target_ppc and target_ppc64 Pierrick Bouvier
2026-02-03 20:56 ` [PATCH v4 5/9] include/hw/virtio/virtio-access.h: remove target specifics define Pierrick Bouvier
2026-02-04  2:10   ` Richard Henderson
2026-02-04 16:37     ` Pierrick Bouvier
2026-02-05 18:54       ` Pierrick Bouvier
2026-02-03 20:56 ` [PATCH v4 6/9] include/hw/ppc/spapr: extract SPAPR_MAX_RAM_SLOTS in a new header Pierrick Bouvier
2026-02-03 20:56 ` [PATCH v4 7/9] hw/virtio/vhost-user: make compilation unit common Pierrick Bouvier
2026-02-03 20:56 ` [PATCH v4 8/9] hw/virtio/virtio-qmp: " Pierrick Bouvier
2026-02-03 20:56 ` [PATCH v4 9/9] hw/virtio/: make all compilation units common Pierrick Bouvier
2026-02-05  5:27 ` [PATCH v4 0/9] single-binary: hw/virtio Pierrick Bouvier
2026-02-05  6:43   ` Michael S. Tsirkin
2026-02-05 17:17     ` Pierrick Bouvier
2026-02-05 18:38       ` Stefan Hajnoczi
2026-02-06  4:38         ` Pierrick Bouvier
2026-02-06 22:21 ` Pierrick Bouvier

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.