[PULL] vhost: cleanups and fixes

From: Michael S. Tsirkin
Date: Thu Mar 02 2017 - 01:16:39 EST


The following changes since commit c470abd4fde40ea6a0846a2beab642a578c0b8cd:

Linux 4.10 (2017-02-19 14:34:00 -0800)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git tags/for_linus

for you to fetch changes up to c4baad50297d84bde1a7ad45e50c73adae4a2192:

virtio-console: avoid DMA from stack (2017-03-02 01:35:06 +0200)

----------------------------------------------------------------
virtio, vhost: optimizations, fixes

Looks like a quiet cycle for vhost/virtio, just a couple of minor
tweaks. Most notable is automatic interrupt affinity for blk and scsi.
Hopefully other devices are not far behind.

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

----------------------------------------------------------------
Christoph Hellwig (9):
virtio_pci: remove struct virtio_pci_vq_info
virtio_pci: use shared interrupts for virtqueues
virtio_pci: don't duplicate the msix_enable flag in struct pci_dev
virtio_pci: simplify MSI-X setup
virtio: allow drivers to request IRQ affinity when creating VQs
virtio: provide a method to get the IRQ affinity mask for a virtqueue
blk-mq: provide a default queue mapping for virtio device
virtio_blk: use virtio IRQ affinity
virtio_scsi: use virtio IRQ affinity

Jason Wang (2):
vhost: try avoiding avail index access when getting descriptor
vhost: introduce O(1) vq metadata cache

Michael S. Tsirkin (1):
virtio_mmio: expose header to userspace

Omar Sandoval (1):
virtio-console: avoid DMA from stack

block/Kconfig | 5 +
block/Makefile | 1 +
block/blk-mq-virtio.c | 54 +++++
drivers/block/virtio_blk.c | 14 +-
drivers/char/virtio_console.c | 14 +-
drivers/crypto/virtio/virtio_crypto_core.c | 2 +-
drivers/gpu/drm/virtio/virtgpu_kms.c | 2 +-
drivers/misc/mic/vop/vop_main.c | 2 +-
drivers/net/caif/caif_virtio.c | 3 +-
drivers/net/virtio_net.c | 2 +-
drivers/remoteproc/remoteproc_virtio.c | 3 +-
drivers/rpmsg/virtio_rpmsg_bus.c | 2 +-
drivers/s390/virtio/kvm_virtio.c | 3 +-
drivers/s390/virtio/virtio_ccw.c | 3 +-
drivers/scsi/virtio_scsi.c | 127 +---------
drivers/vhost/vhost.c | 173 +++++++++----
drivers/vhost/vhost.h | 8 +
drivers/virtio/virtio_balloon.c | 3 +-
drivers/virtio/virtio_input.c | 3 +-
drivers/virtio/virtio_mmio.c | 5 +-
drivers/virtio/virtio_pci_common.c | 376 ++++++++++++-----------------
drivers/virtio/virtio_pci_common.h | 50 +---
drivers/virtio/virtio_pci_legacy.c | 9 +-
drivers/virtio/virtio_pci_modern.c | 17 +-
include/linux/blk-mq-virtio.h | 10 +
include/linux/cpuhotplug.h | 1 -
include/linux/virtio_config.h | 12 +-
include/uapi/linux/Kbuild | 1 +
include/{ => uapi}/linux/virtio_mmio.h | 0
include/uapi/linux/virtio_pci.h | 2 +-
net/vmw_vsock/virtio_transport.c | 3 +-
31 files changed, 456 insertions(+), 454 deletions(-)
create mode 100644 block/blk-mq-virtio.c
create mode 100644 include/linux/blk-mq-virtio.h
rename include/{ => uapi}/linux/virtio_mmio.h (100%)