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

Philippe Mathieu-Daudé posted 10 patches 11 months, 2 weeks ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20230524093744.88442-1-philmd@linaro.org
Maintainers: Stefan Hajnoczi <stefanha@redhat.com>, Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>, Cornelia Huck <cohuck@redhat.com>, Halil Pasic <pasic@linux.ibm.com>, Eric Farman <farman@linux.ibm.com>, Christian Borntraeger <borntraeger@linux.ibm.com>, Richard Henderson <richard.henderson@linaro.org>, David Hildenbrand <david@redhat.com>, Ilya Leoshkevich <iii@linux.ibm.com>, Thomas Huth <thuth@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, Fam Zheng <fam@euphon.net>, Raphael Norwitz <raphael.norwitz@nutanix.com>, "Gonglei (Arei)" <arei.gonglei@huawei.com>, Eric Auger <eric.auger@redhat.com>, Peter Xu <peterx@redhat.com>, "Philippe Mathieu-Daudé" <philmd@linaro.org>
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(-)
[PATCH v2 00/10] hw/virtio: Build various target-agnostic objects just once
Posted by Philippe Mathieu-Daudé 11 months, 2 weeks ago
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(-)

-- 
2.38.1


Re: [PATCH v2 00/10] hw/virtio: Build various target-agnostic objects just once
Posted by Philippe Mathieu-Daudé 11 months, 1 week ago
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


Re: [PATCH v2 00/10] hw/virtio: Build various target-agnostic objects just once
Posted by Michael S. Tsirkin 11 months, 1 week ago
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