Commit 45eabb2e authored by Peter Maydell's avatar Peter Maydell
Browse files

Merge remote-tracking branch 'remotes/mst/tags/for_upstream' into staging



pc, pci, virtio, vhost: fixes, features

Beginning of merging vDPA, new PCI ID, a new virtio balloon stat, intel
iommu rework fixing a couple of security problems (no CVEs yet), fixes
all over the place.

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

# gpg: Signature made Wed 23 May 2018 15:41:32 BST
# gpg:                using RSA key 281F0DB8D28D5469
# gpg: Good signature from "Michael S. Tsirkin <mst@kernel.org>"
# gpg:                 aka "Michael S. Tsirkin <mst@redhat.com>"
# Primary key fingerprint: 0270 606B 6F3C DF3D 0B17  0970 C350 3912 AFBE 8E67
#      Subkey fingerprint: 5D09 FD08 71C8 F85B 94CA  8A0D 281F 0DB8 D28D 5469

* remotes/mst/tags/for_upstream: (28 commits)
  intel-iommu: rework the page walk logic
  util: implement simple iova tree
  intel-iommu: trace domain id during page walk
  intel-iommu: pass in address space when page walk
  intel-iommu: introduce vtd_page_walk_info
  intel-iommu: only do page walk for MAP notifiers
  intel-iommu: add iommu lock
  intel-iommu: remove IntelIOMMUNotifierNode
  intel-iommu: send PSI always even if across PDEs
  nvdimm: fix typo in label-size definition
  contrib/vhost-user-blk: enable protocol feature for vhost-user-blk
  hw/virtio: Fix brace Werror with clang 6.0.0
  libvhost-user: Send messages with no data
  vhost-user+postcopy: Use qemu_set_nonblock
  virtio: support setting memory region based host notifier
  vhost-user: support receiving file descriptors in slave_read
  vhost-user: add Net prefix to internal state structure
  linux-headers: add kvm header for mips
  linux-headers: add unistd.h on all arches
  update-linux-headers.sh: unistd.h, kvm consistency
  ...

Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
parents 37cbe4da 63b88968
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -1787,6 +1787,12 @@ F: include/sysemu/replay.h
F: docs/replay.txt
F: stubs/replay.c

IOVA Tree
M: Peter Xu <peterx@redhat.com>
S: Maintained
F: include/qemu/iova-tree.h
F: util/iova-tree.c

Usermode Emulation
------------------
Overall
+9 −7
Original line number Diff line number Diff line
@@ -323,6 +323,7 @@ vu_message_write(VuDev *dev, int conn_fd, VhostUserMsg *vmsg)
        rc = sendmsg(conn_fd, &msg, 0);
    } while (rc < 0 && (errno == EINTR || errno == EAGAIN));

    if (vmsg->size) {
        do {
            if (vmsg->data) {
                rc = write(conn_fd, vmsg->data, vmsg->size);
@@ -330,6 +331,7 @@ vu_message_write(VuDev *dev, int conn_fd, VhostUserMsg *vmsg)
                rc = write(conn_fd, p + VHOST_USER_HDR_SIZE, vmsg->size);
            }
        } while (rc < 0 && (errno == EINTR || errno == EAGAIN));
    }

    if (rc <= 0) {
        vu_panic(dev, "Error while writing: %s", strerror(errno));
+7 −0
Original line number Diff line number Diff line
@@ -311,6 +311,12 @@ vub_get_features(VuDev *dev)
           1ull << VHOST_USER_F_PROTOCOL_FEATURES;
}

static uint64_t
vub_get_protocol_features(VuDev *dev)
{
    return 1ull << VHOST_USER_PROTOCOL_F_CONFIG;
}

static int
vub_get_config(VuDev *vu_dev, uint8_t *config, uint32_t len)
{
@@ -373,6 +379,7 @@ vub_set_config(VuDev *vu_dev, const uint8_t *data,
static const VuDevIface vub_iface = {
    .get_features = vub_get_features,
    .queue_set_started = vub_queue_set_started,
    .get_protocol_features = vub_get_protocol_features,
    .get_config = vub_get_config,
    .set_config = vub_set_config,
};
+1 −0
Original line number Diff line number Diff line
@@ -62,6 +62,7 @@ PCI devices (other than virtio):
1b36:000a  PCI-PCI bridge (multiseat)
1b36:000b  PCIe Expander Bridge (-device pxb-pcie)
1b36:000d  PCI xhci usb host adapter
1b36:000f  mdpy (mdev sample device), linux/samples/vfio-mdev/mdpy.c

All these devices are documented in docs/specs.

+2 −0
Original line number Diff line number Diff line
@@ -34,6 +34,8 @@ which will return a dictionary containing:
      - stat-total-memory
      - stat-available-memory
      - stat-disk-caches
      - stat-htlb-pgalloc
      - stat-htlb-pgfail

  o A key named last-update, which contains the last stats update
    timestamp in seconds. Since this timestamp is generated by the host,
Loading