[PULL 00/55] pc,virtio: features, tests, fixes, cleanups

Michael S. Tsirkin posted 55 patches 3 years, 2 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20221010172813.204597-1-mst@redhat.com
Maintainers: "Dr. David Alan Gilbert" <dgilbert@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>, Igor Mammedov <imammedo@redhat.com>, Ani Sinha <ani@anisinha.ca>, Peter Maydell <peter.maydell@linaro.org>, Shannon Zhao <shannon.zhaosl@gmail.com>, Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Raphael Norwitz <raphael.norwitz@nutanix.com>, Stefan Hajnoczi <stefanha@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, Richard Henderson <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Peter Xu <peterx@redhat.com>, Jason Wang <jasowang@redhat.com>, Ben Widawsky <ben.widawsky@intel.com>, Jonathan Cameron <jonathan.cameron@huawei.com>, Fam Zheng <fam@euphon.net>, "Alex Bennée" <alex.bennee@linaro.org>, Viresh Kumar <viresh.kumar@linaro.org>, Mathieu Poirier <mathieu.poirier@linaro.org>, Markus Armbruster <armbru@redhat.com>, Michael Roth <michael.roth@amd.com>, Eric Blake <eblake@redhat.com>, Thomas Huth <thuth@redhat.com>, Laurent Vivier <lvivier@redhat.com>
qapi/qapi-schema.json                 |    1 +
qapi/virtio.json                      |  954 ++++++++++++++++++++++++++++++
include/hw/cxl/cxl_device.h           |    1 +
include/hw/firmware/smbios.h          |   10 +
include/hw/pci/pci.h                  |   48 +-
include/hw/virtio/vhost-user-blk.h    |    1 -
include/hw/virtio/vhost-user-gpio.h   |   35 ++
include/hw/virtio/vhost.h             |   18 +
include/hw/virtio/virtio-blk-common.h |   20 +
include/hw/virtio/virtio.h            |   28 +-
include/monitor/hmp.h                 |    5 +
tests/qtest/libqos/virtio-gpio.h      |   35 ++
hw/arm/virt-acpi-build.c              |    5 +-
hw/block/vhost-user-blk.c             |   39 +-
hw/block/virtio-blk-common.c          |   39 ++
hw/block/virtio-blk.c                 |   28 +-
hw/i386/acpi-build.c                  |  300 +++++-----
hw/i386/intel_iommu.c                 |    5 +
hw/mem/cxl_type3.c                    |   14 +-
hw/net/virtio-net.c                   |    9 +-
hw/scsi/vhost-scsi.c                  |    4 +-
hw/scsi/vhost-user-scsi.c             |    2 +-
hw/smbios/smbios.c                    |   63 ++
hw/virtio/vhost-user-fs.c             |    9 +-
hw/virtio/vhost-user-gpio-pci.c       |   69 +++
hw/virtio/vhost-user-gpio.c           |  411 +++++++++++++
hw/virtio/vhost-user-i2c.c            |   10 +-
hw/virtio/vhost-user-rng.c            |   10 +-
hw/virtio/vhost-user-vsock.c          |    8 +-
hw/virtio/vhost-user.c                |   16 +-
hw/virtio/vhost-vsock-common.c        |    3 +-
hw/virtio/vhost-vsock.c               |    8 +-
hw/virtio/vhost.c                     |    6 +
hw/virtio/virtio-stub.c               |   42 ++
hw/virtio/virtio.c                    | 1049 ++++++++++++++++++++++++++++++++-
monitor/hmp-cmds.c                    |  310 ++++++++++
tests/qtest/libqos/virtio-gpio.c      |  171 ++++++
tests/qtest/libqos/virtio.c           |    4 +-
tests/qtest/qmp-cmd-test.c            |    1 +
tests/qtest/qos-test.c                |    9 +-
tests/qtest/vhost-user-test.c         |  177 +++++-
MAINTAINERS                           |   12 +
hmp-commands-info.hx                  |   70 +++
hw/block/meson.build                  |    4 +-
hw/virtio/Kconfig                     |    5 +
hw/virtio/meson.build                 |    4 +
hw/virtio/trace-events                |    9 +
qapi/meson.build                      |    1 +
qemu-options.hx                       |    2 +
tests/data/acpi/pc/DSDT               |  Bin 5987 -> 6422 bytes
tests/data/acpi/pc/DSDT.acpierst      |  Bin 5954 -> 6382 bytes
tests/data/acpi/pc/DSDT.acpihmat      |  Bin 7312 -> 7747 bytes
tests/data/acpi/pc/DSDT.bridge        |  Bin 8653 -> 9496 bytes
tests/data/acpi/pc/DSDT.cphp          |  Bin 6451 -> 6886 bytes
tests/data/acpi/pc/DSDT.dimmpxm       |  Bin 7641 -> 8076 bytes
tests/data/acpi/pc/DSDT.hpbridge      |  Bin 5954 -> 6382 bytes
tests/data/acpi/pc/DSDT.hpbrroot      |  Bin 3069 -> 3069 bytes
tests/data/acpi/pc/DSDT.ipmikcs       |  Bin 6059 -> 6494 bytes
tests/data/acpi/pc/DSDT.memhp         |  Bin 7346 -> 7781 bytes
tests/data/acpi/pc/DSDT.nohpet        |  Bin 5845 -> 6280 bytes
tests/data/acpi/pc/DSDT.numamem       |  Bin 5993 -> 6428 bytes
tests/data/acpi/pc/DSDT.roothp        |  Bin 6195 -> 6656 bytes
tests/data/acpi/q35/DSDT              |  Bin 8274 -> 8320 bytes
tests/data/acpi/q35/DSDT.acpierst     |  Bin 8291 -> 8337 bytes
tests/data/acpi/q35/DSDT.acpihmat     |  Bin 9599 -> 9645 bytes
tests/data/acpi/q35/DSDT.applesmc     |  Bin 8320 -> 8366 bytes
tests/data/acpi/q35/DSDT.bridge       |  Bin 10988 -> 11449 bytes
tests/data/acpi/q35/DSDT.cphp         |  Bin 8738 -> 8784 bytes
tests/data/acpi/q35/DSDT.cxl          |  Bin 9600 -> 9646 bytes
tests/data/acpi/q35/DSDT.dimmpxm      |  Bin 9928 -> 9974 bytes
tests/data/acpi/q35/DSDT.ipmibt       |  Bin 8349 -> 8395 bytes
tests/data/acpi/q35/DSDT.ipmismbus    |  Bin 8363 -> 8409 bytes
tests/data/acpi/q35/DSDT.ivrs         |  Bin 8291 -> 8337 bytes
tests/data/acpi/q35/DSDT.memhp        |  Bin 9633 -> 9679 bytes
tests/data/acpi/q35/DSDT.mmio64       |  Bin 9404 -> 9450 bytes
tests/data/acpi/q35/DSDT.multi-bridge |  Bin 8568 -> 8640 bytes
tests/data/acpi/q35/DSDT.nohpet       |  Bin 8132 -> 8178 bytes
tests/data/acpi/q35/DSDT.numamem      |  Bin 8280 -> 8326 bytes
tests/data/acpi/q35/DSDT.pvpanic-isa  |  Bin 8375 -> 8421 bytes
tests/data/acpi/q35/DSDT.tis.tpm12    |  Bin 8880 -> 8926 bytes
tests/data/acpi/q35/DSDT.tis.tpm2     |  Bin 8906 -> 8952 bytes
tests/data/acpi/q35/DSDT.viot         |  Bin 9383 -> 9429 bytes
tests/data/acpi/q35/DSDT.xapic        |  Bin 35637 -> 35683 bytes
tests/data/acpi/virt/GTDT             |  Bin 96 -> 96 bytes
tests/data/acpi/virt/GTDT.memhp       |  Bin 96 -> 96 bytes
tests/data/acpi/virt/GTDT.numamem     |  Bin 96 -> 96 bytes
tests/qtest/libqos/meson.build        |    1 +
87 files changed, 3796 insertions(+), 289 deletions(-)
create mode 100644 qapi/virtio.json
create mode 100644 include/hw/virtio/vhost-user-gpio.h
create mode 100644 include/hw/virtio/virtio-blk-common.h
create mode 100644 tests/qtest/libqos/virtio-gpio.h
create mode 100644 hw/block/virtio-blk-common.c
create mode 100644 hw/virtio/vhost-user-gpio-pci.c
create mode 100644 hw/virtio/vhost-user-gpio.c
create mode 100644 hw/virtio/virtio-stub.c
create mode 100644 tests/qtest/libqos/virtio-gpio.c
[PULL 00/55] pc,virtio: features, tests, fixes, cleanups
Posted by Michael S. Tsirkin 3 years, 2 months ago
The following changes since commit f1d33f55c47dfdaf8daacd618588ad3ae4c452d1:

  Merge tag 'pull-testing-gdbstub-plugins-gitdm-061022-3' of https://github.com/stsquad/qemu into staging (2022-10-06 07:11:56 -0400)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream

for you to fetch changes up to 3216ab2acb08b47d4ff83e709406690d37e44aff:

  x86: pci: acpi: consolidate PCI slots creation (2022-10-09 16:38:46 -0400)

----------------------------------------------------------------
pc,virtio: features, tests, fixes, cleanups

virtio introspection
new serial number opton for cxl
vhost user blk dynamic config size
virtio-gpio vhost user backend

Tests fixes cleanups all over the place

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>

----------------------------------------------------------------
Alex Bennée (17):
      hw/virtio: incorporate backend features in features
      include/hw/virtio: more comment for VIRTIO_F_BAD_FEATURE
      include/hw: document vhost_dev feature life-cycle
      hw/virtio: fix some coding style issues
      hw/virtio: log potentially buggy guest drivers
      hw/virtio: add some vhost-user trace events
      hw/virtio: move vm_running check to virtio_device_started
      hw/virtio: move vhd->started check into helper and add FIXME
      tests/qtest: pass stdout/stderr down to subtests
      tests/qtest: add a timeout for subprocess_run_one_test
      tests/qtest: use qos_printf instead of g_test_message
      tests/qtest: catch unhandled vhost-user messages
      tests/qtest: plain g_assert for VHOST_USER_F_PROTOCOL_FEATURES
      tests/qtest: add assert to catch bad features
      tests/qtest: implement stub for VHOST_USER_GET_CONFIG
      tests/qtest: add a get_features op to vhost-user-test
      tests/qtest: enable tests for virtio-gpio

Daniil Tatianin (5):
      virtio: introduce VirtIOConfigSizeParams & virtio_get_config_size
      virtio-blk: move config size params to virtio-blk-common
      vhost-user-blk: make it possible to disable write-zeroes/discard
      vhost-user-blk: make 'config_wce' part of 'host_features'
      vhost-user-blk: dynamically resize config space based on features

Hal Martin (1):
      hw/smbios: support for type 8 (port connector)

Igor Mammedov (17):
      tests: acpi: whitelist pc/q35 DSDT due to HPET AML move
      acpi: x86: deduplicate HPET AML building
      tests: acpi: update expected blobs after HPET move
      tests: acpi: whitelist pc/q35 DSDT due to HPET AML move
      acpi: x86: refactor PDSM method to reduce nesting
      x86: acpi: _DSM: use Package to pass parameters
      tests: acpi: update expected blobs
      tests: acpi: whitelist pc/q35 DSDT before switching _DSM to use ASUN
      x86: acpi: cleanup PCI device _DSM duplication
      tests: acpi: update expected blobs
      tests: acpi: whitelist pc/q35 DSDT before moving _ADR field
      x86: pci: acpi: reorder Device's _ADR and _SUN fields
      tests: acpi: update expected blobs
      tests: acpi: whitelist pc/q35 DSDT before moving _ADR field
      x86: pci: acpi: reorder Device's _DSM method
      tests: acpi: update expected blobs
      x86: pci: acpi: consolidate PCI slots creation

Jonathan Cameron (1):
      mem/cxl-type3: Add sn option to provide serial number for PCI ecap

Laurent Vivier (6):
      qmp: add QMP command x-query-virtio
      qmp: add QMP command x-query-virtio-status
      qmp: decode feature & status bits in virtio-status
      qmp: add QMP commands for virtio/vhost queue-status
      qmp: add QMP command x-query-virtio-queue-element
      hmp: add virtio commands

Miguel Luis (3):
      tests/acpi: virt: allow acpi GTDT changes
      acpi: arm/virt: build_gtdt: fix invalid 64-bit physical addresses
      tests/acpi: virt: update ACPI GTDT binaries

Peter Maydell (2):
      pci: Remove unused pci_get_*_by_mask() functions
      pci: Sanity check mask argument to pci_set_*_by_mask()

Peter Xu (1):
      Revert "intel_iommu: Fix irqchip / X2APIC configuration checks"

Viresh Kumar (2):
      hw/virtio: add boilerplate for vhost-user-gpio device
      hw/virtio: add vhost-user-gpio-pci boilerplate

 qapi/qapi-schema.json                 |    1 +
 qapi/virtio.json                      |  954 ++++++++++++++++++++++++++++++
 include/hw/cxl/cxl_device.h           |    1 +
 include/hw/firmware/smbios.h          |   10 +
 include/hw/pci/pci.h                  |   48 +-
 include/hw/virtio/vhost-user-blk.h    |    1 -
 include/hw/virtio/vhost-user-gpio.h   |   35 ++
 include/hw/virtio/vhost.h             |   18 +
 include/hw/virtio/virtio-blk-common.h |   20 +
 include/hw/virtio/virtio.h            |   28 +-
 include/monitor/hmp.h                 |    5 +
 tests/qtest/libqos/virtio-gpio.h      |   35 ++
 hw/arm/virt-acpi-build.c              |    5 +-
 hw/block/vhost-user-blk.c             |   39 +-
 hw/block/virtio-blk-common.c          |   39 ++
 hw/block/virtio-blk.c                 |   28 +-
 hw/i386/acpi-build.c                  |  300 +++++-----
 hw/i386/intel_iommu.c                 |    5 +
 hw/mem/cxl_type3.c                    |   14 +-
 hw/net/virtio-net.c                   |    9 +-
 hw/scsi/vhost-scsi.c                  |    4 +-
 hw/scsi/vhost-user-scsi.c             |    2 +-
 hw/smbios/smbios.c                    |   63 ++
 hw/virtio/vhost-user-fs.c             |    9 +-
 hw/virtio/vhost-user-gpio-pci.c       |   69 +++
 hw/virtio/vhost-user-gpio.c           |  411 +++++++++++++
 hw/virtio/vhost-user-i2c.c            |   10 +-
 hw/virtio/vhost-user-rng.c            |   10 +-
 hw/virtio/vhost-user-vsock.c          |    8 +-
 hw/virtio/vhost-user.c                |   16 +-
 hw/virtio/vhost-vsock-common.c        |    3 +-
 hw/virtio/vhost-vsock.c               |    8 +-
 hw/virtio/vhost.c                     |    6 +
 hw/virtio/virtio-stub.c               |   42 ++
 hw/virtio/virtio.c                    | 1049 ++++++++++++++++++++++++++++++++-
 monitor/hmp-cmds.c                    |  310 ++++++++++
 tests/qtest/libqos/virtio-gpio.c      |  171 ++++++
 tests/qtest/libqos/virtio.c           |    4 +-
 tests/qtest/qmp-cmd-test.c            |    1 +
 tests/qtest/qos-test.c                |    9 +-
 tests/qtest/vhost-user-test.c         |  177 +++++-
 MAINTAINERS                           |   12 +
 hmp-commands-info.hx                  |   70 +++
 hw/block/meson.build                  |    4 +-
 hw/virtio/Kconfig                     |    5 +
 hw/virtio/meson.build                 |    4 +
 hw/virtio/trace-events                |    9 +
 qapi/meson.build                      |    1 +
 qemu-options.hx                       |    2 +
 tests/data/acpi/pc/DSDT               |  Bin 5987 -> 6422 bytes
 tests/data/acpi/pc/DSDT.acpierst      |  Bin 5954 -> 6382 bytes
 tests/data/acpi/pc/DSDT.acpihmat      |  Bin 7312 -> 7747 bytes
 tests/data/acpi/pc/DSDT.bridge        |  Bin 8653 -> 9496 bytes
 tests/data/acpi/pc/DSDT.cphp          |  Bin 6451 -> 6886 bytes
 tests/data/acpi/pc/DSDT.dimmpxm       |  Bin 7641 -> 8076 bytes
 tests/data/acpi/pc/DSDT.hpbridge      |  Bin 5954 -> 6382 bytes
 tests/data/acpi/pc/DSDT.hpbrroot      |  Bin 3069 -> 3069 bytes
 tests/data/acpi/pc/DSDT.ipmikcs       |  Bin 6059 -> 6494 bytes
 tests/data/acpi/pc/DSDT.memhp         |  Bin 7346 -> 7781 bytes
 tests/data/acpi/pc/DSDT.nohpet        |  Bin 5845 -> 6280 bytes
 tests/data/acpi/pc/DSDT.numamem       |  Bin 5993 -> 6428 bytes
 tests/data/acpi/pc/DSDT.roothp        |  Bin 6195 -> 6656 bytes
 tests/data/acpi/q35/DSDT              |  Bin 8274 -> 8320 bytes
 tests/data/acpi/q35/DSDT.acpierst     |  Bin 8291 -> 8337 bytes
 tests/data/acpi/q35/DSDT.acpihmat     |  Bin 9599 -> 9645 bytes
 tests/data/acpi/q35/DSDT.applesmc     |  Bin 8320 -> 8366 bytes
 tests/data/acpi/q35/DSDT.bridge       |  Bin 10988 -> 11449 bytes
 tests/data/acpi/q35/DSDT.cphp         |  Bin 8738 -> 8784 bytes
 tests/data/acpi/q35/DSDT.cxl          |  Bin 9600 -> 9646 bytes
 tests/data/acpi/q35/DSDT.dimmpxm      |  Bin 9928 -> 9974 bytes
 tests/data/acpi/q35/DSDT.ipmibt       |  Bin 8349 -> 8395 bytes
 tests/data/acpi/q35/DSDT.ipmismbus    |  Bin 8363 -> 8409 bytes
 tests/data/acpi/q35/DSDT.ivrs         |  Bin 8291 -> 8337 bytes
 tests/data/acpi/q35/DSDT.memhp        |  Bin 9633 -> 9679 bytes
 tests/data/acpi/q35/DSDT.mmio64       |  Bin 9404 -> 9450 bytes
 tests/data/acpi/q35/DSDT.multi-bridge |  Bin 8568 -> 8640 bytes
 tests/data/acpi/q35/DSDT.nohpet       |  Bin 8132 -> 8178 bytes
 tests/data/acpi/q35/DSDT.numamem      |  Bin 8280 -> 8326 bytes
 tests/data/acpi/q35/DSDT.pvpanic-isa  |  Bin 8375 -> 8421 bytes
 tests/data/acpi/q35/DSDT.tis.tpm12    |  Bin 8880 -> 8926 bytes
 tests/data/acpi/q35/DSDT.tis.tpm2     |  Bin 8906 -> 8952 bytes
 tests/data/acpi/q35/DSDT.viot         |  Bin 9383 -> 9429 bytes
 tests/data/acpi/q35/DSDT.xapic        |  Bin 35637 -> 35683 bytes
 tests/data/acpi/virt/GTDT             |  Bin 96 -> 96 bytes
 tests/data/acpi/virt/GTDT.memhp       |  Bin 96 -> 96 bytes
 tests/data/acpi/virt/GTDT.numamem     |  Bin 96 -> 96 bytes
 tests/qtest/libqos/meson.build        |    1 +
 87 files changed, 3796 insertions(+), 289 deletions(-)
 create mode 100644 qapi/virtio.json
 create mode 100644 include/hw/virtio/vhost-user-gpio.h
 create mode 100644 include/hw/virtio/virtio-blk-common.h
 create mode 100644 tests/qtest/libqos/virtio-gpio.h
 create mode 100644 hw/block/virtio-blk-common.c
 create mode 100644 hw/virtio/vhost-user-gpio-pci.c
 create mode 100644 hw/virtio/vhost-user-gpio.c
 create mode 100644 hw/virtio/virtio-stub.c
 create mode 100644 tests/qtest/libqos/virtio-gpio.c


Re: [PULL 00/55] pc,virtio: features, tests, fixes, cleanups
Posted by Stefan Hajnoczi 3 years, 2 months ago
Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/7.2 for any user-visible changes.
Re: [PULL 00/55] pc,virtio: features, tests, fixes, cleanups
Posted by Stefan Hajnoczi 3 years, 2 months ago
On Mon, 10 Oct 2022 at 13:46, Michael S. Tsirkin <mst@redhat.com> wrote:
>
> The following changes since commit f1d33f55c47dfdaf8daacd618588ad3ae4c452d1:
>
>   Merge tag 'pull-testing-gdbstub-plugins-gitdm-061022-3' of https://github.com/stsquad/qemu into staging (2022-10-06 07:11:56 -0400)
>
> are available in the Git repository at:
>
>   git://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream

Hi Michael,
Please update your .git/config with the https URL for future pull requests:

  https://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git

The pull request is signed with your GPG, so modifications should be
detected when verifying the signature. It still seems like a good idea
to use https:// when possible instead of unencrypted git://.

Stefan
Re: [PULL 00/55] pc,virtio: features, tests, fixes, cleanups
Posted by Michael S. Tsirkin 3 years, 2 months ago
On Wed, Oct 12, 2022 at 04:04:31PM -0400, Stefan Hajnoczi wrote:
> On Mon, 10 Oct 2022 at 13:46, Michael S. Tsirkin <mst@redhat.com> wrote:
> >
> > The following changes since commit f1d33f55c47dfdaf8daacd618588ad3ae4c452d1:
> >
> >   Merge tag 'pull-testing-gdbstub-plugins-gitdm-061022-3' of https://github.com/stsquad/qemu into staging (2022-10-06 07:11:56 -0400)
> >
> > are available in the Git repository at:
> >
> >   git://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
> 
> Hi Michael,
> Please update your .git/config with the https URL for future pull requests:
> 
>   https://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git
> 
> The pull request is signed with your GPG, so modifications should be
> detected when verifying the signature. It still seems like a good idea
> to use https:// when possible instead of unencrypted git://.
> 
> Stefan

I don't think this is from .git/config, this is just a parameter
to request-pull. OK, I will switch to that.

-- 
MST
Re: [PULL 00/55] pc,virtio: features, tests, fixes, cleanups
Posted by Stefan Hajnoczi 3 years, 2 months ago
On Wed, 12 Oct 2022 at 17:00, Michael S. Tsirkin <mst@redhat.com> wrote:
>
> On Wed, Oct 12, 2022 at 04:04:31PM -0400, Stefan Hajnoczi wrote:
> > On Mon, 10 Oct 2022 at 13:46, Michael S. Tsirkin <mst@redhat.com> wrote:
> > >
> > > The following changes since commit f1d33f55c47dfdaf8daacd618588ad3ae4c452d1:
> > >
> > >   Merge tag 'pull-testing-gdbstub-plugins-gitdm-061022-3' of https://github.com/stsquad/qemu into staging (2022-10-06 07:11:56 -0400)
> > >
> > > are available in the Git repository at:
> > >
> > >   git://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
> >
> > Hi Michael,
> > Please update your .git/config with the https URL for future pull requests:
> >
> >   https://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git
> >
> > The pull request is signed with your GPG, so modifications should be
> > detected when verifying the signature. It still seems like a good idea
> > to use https:// when possible instead of unencrypted git://.
> >
> > Stefan
>
> I don't think this is from .git/config, this is just a parameter
> to request-pull. OK, I will switch to that.

You're right. For some reason I thought the URL was pulled from the
remote's configuration in .git/config.

Stefan