[PULL v3 00/32] virtio, pci, pc: fixes, features

Michael S. Tsirkin posted 32 patches 5 years, 10 months ago
Test asan failed
Test checkpatch failed
Test FreeBSD failed
Test docker-mingw@fedora failed
Test docker-clang@ubuntu failed
Test docker-quick@centos7 failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20200105125622.27231-1-mst@redhat.com
Maintainers: Max Reitz <mreitz@redhat.com>, Thomas Huth <thuth@redhat.com>, Gerd Hoffmann <kraxel@redhat.com>, Stefan Hajnoczi <stefanha@redhat.com>, Amit Shah <amit@kernel.org>, Eric Blake <eblake@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, Eduardo Habkost <ehabkost@redhat.com>, Jason Wang <jasowang@redhat.com>, Fam Zheng <fam@euphon.net>, Laurent Vivier <lvivier@redhat.com>, Kevin Wolf <kwolf@redhat.com>, Richard Henderson <rth@twiddle.net>, Markus Armbruster <armbru@redhat.com>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, "Michael S. Tsirkin" <mst@redhat.com>, Igor Mammedov <imammedo@redhat.com>, "Marc-André Lureau" <marcandre.lureau@redhat.com>
docs/interop/vhost-user.json              |  31 ++++
qapi/machine.json                         | 180 +++++++++++++++++-
hw/acpi/hmat.h                            |  42 +++++
hw/i386/intel_iommu_internal.h            |   1 +
include/hw/pci/pci_host.h                 |   4 +-
include/hw/virtio/virtio-blk.h            |   1 +
include/hw/virtio/virtio-scsi.h           |   1 +
include/hw/virtio/virtio.h                |  18 ++
include/sysemu/numa.h                     |  63 +++++++
contrib/vhost-user-blk/vhost-user-blk.c   | 108 ++++++-----
hw/acpi/hmat.c                            | 268 +++++++++++++++++++++++++++
hw/block/virtio-blk.c                     |  18 +-
hw/char/virtio-serial-bus.c               |   8 +
hw/core/machine.c                         |  68 +++++++
hw/core/numa.c                            | 297 ++++++++++++++++++++++++++++++
hw/i386/acpi-build.c                      |   5 +
hw/i386/intel_iommu.c                     | 100 +++++++---
hw/i386/pc_piix.c                         |   1 -
hw/i386/pc_q35.c                          |   1 -
hw/input/virtio-input.c                   |   5 +-
hw/net/virtio-net.c                       |   3 +-
hw/pci/pci_host.c                         |  25 +--
hw/scsi/vhost-scsi.c                      |   2 +
hw/scsi/vhost-user-scsi.c                 |  24 +++
hw/scsi/virtio-scsi.c                     |  19 +-
hw/virtio/vhost-user.c                    |   8 +-
hw/virtio/virtio-balloon.c                |   7 +
hw/virtio/virtio-mmio.c                   |  17 +-
hw/virtio/virtio-pci.c                    |  14 +-
hw/virtio/virtio.c                        |  64 +++++--
tests/bios-tables-test.c                  |  44 +++++
tests/numa-test.c                         | 213 +++++++++++++++++++++
docs/interop/vhost-user.rst               |  32 ++++
hw/acpi/Kconfig                           |   7 +-
hw/acpi/Makefile.objs                     |   1 +
qemu-options.hx                           |  95 +++++++++-
tests/acceptance/virtio_seg_max_adjust.py | 134 ++++++++++++++
tests/data/acpi/pc/APIC.acpihmat          | Bin 0 -> 128 bytes
tests/data/acpi/pc/DSDT.acpihmat          | Bin 0 -> 6455 bytes
tests/data/acpi/pc/HMAT.acpihmat          | Bin 0 -> 280 bytes
tests/data/acpi/pc/SRAT.acpihmat          | Bin 0 -> 280 bytes
tests/data/acpi/q35/APIC.acpihmat         | Bin 0 -> 128 bytes
tests/data/acpi/q35/DSDT.acpihmat         | Bin 0 -> 9203 bytes
tests/data/acpi/q35/HMAT.acpihmat         | Bin 0 -> 280 bytes
tests/data/acpi/q35/SRAT.acpihmat         | Bin 0 -> 280 bytes
45 files changed, 1796 insertions(+), 133 deletions(-)
create mode 100644 hw/acpi/hmat.h
create mode 100644 hw/acpi/hmat.c
create mode 100755 tests/acceptance/virtio_seg_max_adjust.py
create mode 100644 tests/data/acpi/pc/APIC.acpihmat
create mode 100644 tests/data/acpi/pc/DSDT.acpihmat
create mode 100644 tests/data/acpi/pc/HMAT.acpihmat
create mode 100644 tests/data/acpi/pc/SRAT.acpihmat
create mode 100644 tests/data/acpi/q35/APIC.acpihmat
create mode 100644 tests/data/acpi/q35/DSDT.acpihmat
create mode 100644 tests/data/acpi/q35/HMAT.acpihmat
create mode 100644 tests/data/acpi/q35/SRAT.acpihmat
[PULL v3 00/32] virtio, pci, pc: fixes, features
Posted by Michael S. Tsirkin 5 years, 10 months ago
Changes from v2:
- rebased on master
- a couple more bugfixes

The following changes since commit f0dcfddecee8b860e015bb07d67cfcbdfbfd51d9:

  Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' into staging (2020-01-03 17:18:08 +0000)

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 93ef96f3258f489f7bff28ca7b9e0dc74de2a75b:

  intel_iommu: add present bit check for pasid table entries (2020-01-05 07:41:10 -0500)

----------------------------------------------------------------
virtio, pci, pc: fixes, features

Bugfixes all over the place.
HMAT support.
New flags for vhost-user-blk utility.
Auto-tuning of seg max for virtio storage.

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

----------------------------------------------------------------
Denis Plotnikov (4):
      hw: fix using 4.2 compat in 5.0 machine types for i440fx/q35
      virtio: make seg_max virtqueue size dependent
      tests: add virtio-scsi and virtio-blk seg_max_adjust test
      virtio-mmio: update queue size on guest write

Jean-Philippe Brucker (1):
      virtio-mmio: Clear v2 transport state on soft reset

Liu Jingqi (5):
      numa: Extend CLI to provide memory latency and bandwidth information
      numa: Extend CLI to provide memory side cache information
      hmat acpi: Build Memory Proximity Domain Attributes Structure(s)
      hmat acpi: Build System Locality Latency and Bandwidth Information Structure(s)
      hmat acpi: Build Memory Side Cache Information Structure(s)

Liu Yi L (2):
      intel_iommu: a fix to vtd_find_as_from_bus_num()
      intel_iommu: add present bit check for pasid table entries

Michael Roth (1):
      virtio-pci: disable vring processing when bus-mastering is disabled

Michael S. Tsirkin (5):
      virtio: add ability to delete vq through a pointer
      virtio: make virtio_delete_queue idempotent
      virtio-input: convert to new virtio_delete_queue
      virtio: update queue size on guest write
      ACPI: add expected files for HMAT tests (acpihmat)

Micky Yun Chan (1):
      Implement backend program convention command for vhost-user-blk

Pan Nengyuan (2):
      virtio-balloon: fix memory leak while attach virtio-balloon device
      virtio-serial-bus: fix memory leak while attach virtio-serial-bus

Philippe Mathieu-Daudé (2):
      hw/pci/pci_host: Remove redundant PCI_DPRINTF()
      hw/pci/pci_host: Let pci_data_[read/write] use unsigned 'size' argument

Raphael Norwitz (2):
      vhost-user: add VHOST_USER_RESET_DEVICE to reset devices
      vhost-user-scsi: reset the device if supported

Stefan Hajnoczi (1):
      virtio: don't enable notifications during polling

Tao Xu (3):
      numa: Extend CLI to provide initiator information for numa nodes
      tests/numa: Add case for QMP build HMAT
      tests/bios-tables-test: add test cases for ACPI HMAT

Yi Sun (1):
      intel_iommu: fix bug to read DMAR_RTADDR_REG

Yuri Benditovich (2):
      virtio: reset region cache when on queue deletion
      virtio-net: delete also control queue when TX/RX deleted

 docs/interop/vhost-user.json              |  31 ++++
 qapi/machine.json                         | 180 +++++++++++++++++-
 hw/acpi/hmat.h                            |  42 +++++
 hw/i386/intel_iommu_internal.h            |   1 +
 include/hw/pci/pci_host.h                 |   4 +-
 include/hw/virtio/virtio-blk.h            |   1 +
 include/hw/virtio/virtio-scsi.h           |   1 +
 include/hw/virtio/virtio.h                |  18 ++
 include/sysemu/numa.h                     |  63 +++++++
 contrib/vhost-user-blk/vhost-user-blk.c   | 108 ++++++-----
 hw/acpi/hmat.c                            | 268 +++++++++++++++++++++++++++
 hw/block/virtio-blk.c                     |  18 +-
 hw/char/virtio-serial-bus.c               |   8 +
 hw/core/machine.c                         |  68 +++++++
 hw/core/numa.c                            | 297 ++++++++++++++++++++++++++++++
 hw/i386/acpi-build.c                      |   5 +
 hw/i386/intel_iommu.c                     | 100 +++++++---
 hw/i386/pc_piix.c                         |   1 -
 hw/i386/pc_q35.c                          |   1 -
 hw/input/virtio-input.c                   |   5 +-
 hw/net/virtio-net.c                       |   3 +-
 hw/pci/pci_host.c                         |  25 +--
 hw/scsi/vhost-scsi.c                      |   2 +
 hw/scsi/vhost-user-scsi.c                 |  24 +++
 hw/scsi/virtio-scsi.c                     |  19 +-
 hw/virtio/vhost-user.c                    |   8 +-
 hw/virtio/virtio-balloon.c                |   7 +
 hw/virtio/virtio-mmio.c                   |  17 +-
 hw/virtio/virtio-pci.c                    |  14 +-
 hw/virtio/virtio.c                        |  64 +++++--
 tests/bios-tables-test.c                  |  44 +++++
 tests/numa-test.c                         | 213 +++++++++++++++++++++
 docs/interop/vhost-user.rst               |  32 ++++
 hw/acpi/Kconfig                           |   7 +-
 hw/acpi/Makefile.objs                     |   1 +
 qemu-options.hx                           |  95 +++++++++-
 tests/acceptance/virtio_seg_max_adjust.py | 134 ++++++++++++++
 tests/data/acpi/pc/APIC.acpihmat          | Bin 0 -> 128 bytes
 tests/data/acpi/pc/DSDT.acpihmat          | Bin 0 -> 6455 bytes
 tests/data/acpi/pc/HMAT.acpihmat          | Bin 0 -> 280 bytes
 tests/data/acpi/pc/SRAT.acpihmat          | Bin 0 -> 280 bytes
 tests/data/acpi/q35/APIC.acpihmat         | Bin 0 -> 128 bytes
 tests/data/acpi/q35/DSDT.acpihmat         | Bin 0 -> 9203 bytes
 tests/data/acpi/q35/HMAT.acpihmat         | Bin 0 -> 280 bytes
 tests/data/acpi/q35/SRAT.acpihmat         | Bin 0 -> 280 bytes
 45 files changed, 1796 insertions(+), 133 deletions(-)
 create mode 100644 hw/acpi/hmat.h
 create mode 100644 hw/acpi/hmat.c
 create mode 100755 tests/acceptance/virtio_seg_max_adjust.py
 create mode 100644 tests/data/acpi/pc/APIC.acpihmat
 create mode 100644 tests/data/acpi/pc/DSDT.acpihmat
 create mode 100644 tests/data/acpi/pc/HMAT.acpihmat
 create mode 100644 tests/data/acpi/pc/SRAT.acpihmat
 create mode 100644 tests/data/acpi/q35/APIC.acpihmat
 create mode 100644 tests/data/acpi/q35/DSDT.acpihmat
 create mode 100644 tests/data/acpi/q35/HMAT.acpihmat
 create mode 100644 tests/data/acpi/q35/SRAT.acpihmat


Re: [PULL v3 00/32] virtio, pci, pc: fixes, features
Posted by Peter Maydell 5 years, 10 months ago
On Sun, 5 Jan 2020 at 12:57, Michael S. Tsirkin <mst@redhat.com> wrote:
>
> Changes from v2:
> - rebased on master
> - a couple more bugfixes
>
> The following changes since commit f0dcfddecee8b860e015bb07d67cfcbdfbfd51d9:
>
>   Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' into staging (2020-01-03 17:18:08 +0000)
>
> 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 93ef96f3258f489f7bff28ca7b9e0dc74de2a75b:
>
>   intel_iommu: add present bit check for pasid table entries (2020-01-05 07:41:10 -0500)
>
> ----------------------------------------------------------------
> virtio, pci, pc: fixes, features
>
> Bugfixes all over the place.
> HMAT support.
> New flags for vhost-user-blk utility.
> Auto-tuning of seg max for virtio storage.
>
> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>

Build failure for OSX:

/Users/pm215/src/qemu-for-merges/hw/scsi/virtio-scsi.c:904:35: error:
format specifies type 'unsigned short' but the argument has type
'uint32_t' (aka 'unsigned int') [-Werror,-Wformat]
                   "must be > 2", s->conf.virtqueue_size);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/Users/pm215/src/qemu-for-merges/include/qapi/error.h:166:35: note:
expanded from macro 'error_setg'
                        (fmt), ## __VA_ARGS__)
                                  ^~~~~~~~~~~
1 error generated.

(Everything else passed OK.)

thanks
-- PMM

Re: [PULL v3 00/32] virtio, pci, pc: fixes, features
Posted by Michael S. Tsirkin 5 years, 10 months ago
On Mon, Jan 06, 2020 at 04:48:19PM +0000, Peter Maydell wrote:
> On Sun, 5 Jan 2020 at 12:57, Michael S. Tsirkin <mst@redhat.com> wrote:
> >
> > Changes from v2:
> > - rebased on master
> > - a couple more bugfixes
> >
> > The following changes since commit f0dcfddecee8b860e015bb07d67cfcbdfbfd51d9:
> >
> >   Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' into staging (2020-01-03 17:18:08 +0000)
> >
> > 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 93ef96f3258f489f7bff28ca7b9e0dc74de2a75b:
> >
> >   intel_iommu: add present bit check for pasid table entries (2020-01-05 07:41:10 -0500)
> >
> > ----------------------------------------------------------------
> > virtio, pci, pc: fixes, features
> >
> > Bugfixes all over the place.
> > HMAT support.
> > New flags for vhost-user-blk utility.
> > Auto-tuning of seg max for virtio storage.
> >
> > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> 
> Build failure for OSX:
> 
> /Users/pm215/src/qemu-for-merges/hw/scsi/virtio-scsi.c:904:35: error:
> format specifies type 'unsigned short' but the argument has type
> 'uint32_t' (aka 'unsigned int') [-Werror,-Wformat]
>                    "must be > 2", s->conf.virtqueue_size);
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
> /Users/pm215/src/qemu-for-merges/include/qapi/error.h:166:35: note:
> expanded from macro 'error_setg'
>                         (fmt), ## __VA_ARGS__)
>                                   ^~~~~~~~~~~
> 1 error generated.
> 
> (Everything else passed OK.)
> 
> thanks
> -- PMM

Fixed up now - can you try again pls?

-- 
MST