[PATCH v2 00/10] virtio_pci: split out legacy device support

From: Michael S. Tsirkin
Date: Mon Dec 08 2014 - 10:16:40 EST


Sorry about sending two versions in such quick order -
it turns out v1 was broken on modular kernels,
so I'm sending v2 to make these configs testable as well.

virtio 1.0 support for virtio-pci isn't ready yet.
Therefore, this patchset doesn't make any functional changes.
Instead, this simply refactors virtio-pci, splitting legacy
device support code out to a separate file: virtio_pci_legacy.c

For virtio 1.0, all that's left is to add virtio_pci_modern.c
supporting
get_features
finalize_features
get (config)
set (config)
get_status
set_status
reset
setup_vq
del_vq
probe
remove

Most notably, tricky MSI-X vector probing logic stays
in common file: virtio_pci.c. version-specific only has
to code setup/del functions for individual vqs.

Note: to keep patch size down, I avoid big file changes
and renames in the same patch, so I resort to
#include "virtio_pci_legacy.c"
which is ugly, but is there only as an intermediate step.

Changes from v2:
rename virtio_pci ->virtio_pci_common, to keep
kbuild happy for modular builds.


Michael S. Tsirkin (10):
virtio_pci: add isr field
virtio_pci: fix coding style for structs
virtio_pci: free up vq->priv
virtio_pci: use priv for vq notification
virtio_pci: delete vqs indirectly
virtio_pci: setup vqs indirectly
virtio_pci: setup config vector indirectly
virtio_pci: split out legacy device support
virtio_pci: update file descriptions and copyright
virtio_pci: rename virtio_pci -> virtio_pci_common

drivers/virtio/virtio_pci_common.h | 136 +++++++
drivers/virtio/virtio_pci.c | 806 -------------------------------------
drivers/virtio/virtio_pci_common.c | 464 +++++++++++++++++++++
drivers/virtio/virtio_pci_legacy.c | 326 +++++++++++++++
drivers/virtio/Makefile | 1 +
5 files changed, 927 insertions(+), 806 deletions(-)
create mode 100644 drivers/virtio/virtio_pci_common.h
delete mode 100644 drivers/virtio/virtio_pci.c
create mode 100644 drivers/virtio/virtio_pci_common.c
create mode 100644 drivers/virtio/virtio_pci_legacy.c

--
MST

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/