[PATCH 0/9] More virtio hardening

From: Jason Wang
Date: Mon Sep 13 2021 - 01:54:23 EST


Hi All:

This series treis to do more hardening for virito.

patch 1 validates the num_queues for virio-blk device.
patch 2-4 validates max_nr_ports for virito-console device.
patch 5-7 harden virtio-pci interrupts to make sure no exepcted
interrupt handler is tiggered. If this makes sense we can do similar
things in other transport drivers.
patch 8-9 validate used ring length.

Smoking test on blk/net with packed=on/off and iommu_platform=on/off.

Please review.

Thanks

Jason Wang (9):
virtio-blk: validate num_queues during probe
virtio: add doc for validate() method
virtio-console: switch to use .validate()
virtio_console: validate max_nr_ports before trying to use it
virtio_config: introduce a new ready method
virtio_pci: harden MSI-X interrupts
virtio-pci: harden INTX interrupts
virtio_ring: fix typos in vring_desc_extra
virtio_ring: validate used buffer length

drivers/block/virtio_blk.c | 3 +-
drivers/char/virtio_console.c | 51 +++++++++++++++++++++---------
drivers/virtio/virtio_pci_common.c | 43 +++++++++++++++++++++----
drivers/virtio/virtio_pci_common.h | 7 ++--
drivers/virtio/virtio_pci_legacy.c | 5 +--
drivers/virtio/virtio_pci_modern.c | 6 ++--
drivers/virtio/virtio_ring.c | 27 ++++++++++++++--
include/linux/virtio.h | 1 +
include/linux/virtio_config.h | 6 ++++
9 files changed, 118 insertions(+), 31 deletions(-)

--
2.25.1