Here's a patch series to fix known regressions in virtio_pci, by refactoring code along the lines suggested by Rusty. Changes since v3: whitespace fixed in PATCH 1/2 This is on top of patch virtio: fix memory leak on device removal that has been applied by Rusty. This supercedes patches: [PATCHv3] virtio: recover from vector assignment failure [PATCHv2] virtio: fix double free_irq on device removal Michael S. Tsirkin (2): virtio: make del_vq delete vq from list virtio: refactor find_vqs drivers/virtio/virtio_pci.c | 218 ++++++++++++++++++++++++------------------- 1 files changed, 124 insertions(+), 94 deletions(-)