mbox series

[v2,00/10] hw/virtio: Build various target-agnostic objects just once

Message ID 20230524093744.88442-1-philmd@linaro.org
Headers show
Series hw/virtio: Build various target-agnostic objects just once | expand

Message

Philippe Mathieu-Daudé May 24, 2023, 9:37 a.m. UTC
All patches reviewed.

Since v1:
- Addressed Richard & Thomas review comments
  . qemu_target_page_align() dropped
  . qemu_target_page_mask() returns signed
  . meson shuffle
- Collected R-b/T-b/A-b tags
- Dropped vhost-vdpa patch (to be posted as another series)

Less controvertial than my first approach [*] which caches
the access_is_big_endian value in VirtIODevice state, this
series just remove a unnecessary / pointless dependency on
"virtio-access.h", allowing to build various virtio objects
once for all targets.

[*] https://lore.kernel.org/qemu-devel/20221212230517.28872-11-philmd@linaro.org/

Philippe Mathieu-Daudé (10):
  softmmu: Introduce qemu_target_page_mask() helper
  hw/scsi: Introduce VHOST_SCSI_COMMON symbol in Kconfig
  hw/scsi: Rearrange meson.build
  hw/scsi: Rename target-specific source set as
    'specific_virtio_scsi_ss'
  hw/virtio: Introduce VHOST_VSOCK_COMMON symbol in Kconfig
  hw/virtio/virtio-mem: Use qemu_ram_get_fd() helper
  hw/virtio/vhost-vsock: Include missing 'virtio/virtio-bus.h' header
  hw/virtio/virtio-iommu: Use target-agnostic qemu_target_page_mask()
  hw/virtio: Remove unnecessary 'virtio-access.h' header
  hw/virtio: Build various target-agnostic objects just once

 include/exec/target_page.h      |  1 +
 hw/block/dataplane/virtio-blk.c |  1 -
 hw/s390x/virtio-ccw.c           |  1 -
 hw/scsi/vhost-scsi.c            |  1 -
 hw/scsi/vhost-user-scsi.c       |  1 -
 hw/scsi/virtio-scsi-dataplane.c |  1 -
 hw/virtio/vdpa-dev.c            |  1 -
 hw/virtio/vhost-vdpa.c          |  1 -
 hw/virtio/vhost-vsock-common.c  |  2 +-
 hw/virtio/vhost.c               |  1 -
 hw/virtio/virtio-crypto.c       |  1 -
 hw/virtio/virtio-iommu.c        |  4 ++--
 hw/virtio/virtio-mem.c          |  3 +--
 softmmu/physmem.c               |  5 +++++
 hw/block/dataplane/meson.build  |  2 +-
 hw/scsi/Kconfig                 |  6 ++++++
 hw/scsi/meson.build             | 20 +++++++++++++-------
 hw/virtio/Kconfig               |  6 ++++++
 hw/virtio/meson.build           | 14 ++++++++------
 19 files changed, 44 insertions(+), 28 deletions(-)

Comments

Philippe Mathieu-Daudé May 31, 2023, 8:39 p.m. UTC | #1
Hi Michael,

On 24/5/23 11:37, Philippe Mathieu-Daudé wrote:
> All patches reviewed.

Could you take this series via your virtio tree?

Thanks!

Phil.

> Less controvertial than my first approach [*] which caches
> the access_is_big_endian value in VirtIODevice state, this
> series just remove a unnecessary / pointless dependency on
> "virtio-access.h", allowing to build various virtio objects
> once for all targets.
> 
> [*] https://lore.kernel.org/qemu-devel/20221212230517.28872-11-philmd@linaro.org/
> 
> Philippe Mathieu-Daudé (10):
>    softmmu: Introduce qemu_target_page_mask() helper
>    hw/scsi: Introduce VHOST_SCSI_COMMON symbol in Kconfig
>    hw/scsi: Rearrange meson.build
>    hw/scsi: Rename target-specific source set as
>      'specific_virtio_scsi_ss'
>    hw/virtio: Introduce VHOST_VSOCK_COMMON symbol in Kconfig
>    hw/virtio/virtio-mem: Use qemu_ram_get_fd() helper
>    hw/virtio/vhost-vsock: Include missing 'virtio/virtio-bus.h' header
>    hw/virtio/virtio-iommu: Use target-agnostic qemu_target_page_mask()
>    hw/virtio: Remove unnecessary 'virtio-access.h' header
>    hw/virtio: Build various target-agnostic objects just once
Michael S. Tsirkin May 31, 2023, 8:50 p.m. UTC | #2
On Wed, May 31, 2023 at 10:39:48PM +0200, Philippe Mathieu-Daudé wrote:
> Hi Michael,
> 
> On 24/5/23 11:37, Philippe Mathieu-Daudé wrote:
> > All patches reviewed.
> 
> Could you take this series via your virtio tree?
> 
> Thanks!
> 
> Phil.

Will do, in next pull. Thanks!

> > Less controvertial than my first approach [*] which caches
> > the access_is_big_endian value in VirtIODevice state, this
> > series just remove a unnecessary / pointless dependency on
> > "virtio-access.h", allowing to build various virtio objects
> > once for all targets.
> > 
> > [*] https://lore.kernel.org/qemu-devel/20221212230517.28872-11-philmd@linaro.org/
> > 
> > Philippe Mathieu-Daudé (10):
> >    softmmu: Introduce qemu_target_page_mask() helper
> >    hw/scsi: Introduce VHOST_SCSI_COMMON symbol in Kconfig
> >    hw/scsi: Rearrange meson.build
> >    hw/scsi: Rename target-specific source set as
> >      'specific_virtio_scsi_ss'
> >    hw/virtio: Introduce VHOST_VSOCK_COMMON symbol in Kconfig
> >    hw/virtio/virtio-mem: Use qemu_ram_get_fd() helper
> >    hw/virtio/vhost-vsock: Include missing 'virtio/virtio-bus.h' header
> >    hw/virtio/virtio-iommu: Use target-agnostic qemu_target_page_mask()
> >    hw/virtio: Remove unnecessary 'virtio-access.h' header
> >    hw/virtio: Build various target-agnostic objects just once