aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Wang <[email protected]>2022-05-27 14:01:16 +0800
committerMichael S. Tsirkin <[email protected]>2022-05-31 12:45:09 -0400
commit9e9b2893284fa0681ab5c0632d02214385a174c3 (patch)
tree59678d19f60cb5f48575b785be0eecae36817318
parent48b3dd24382139a239a43bca7c1c632438d1dfb2 (diff)
virtio-mmio: implement synchronize_cbs()
Simply synchronize the platform irq that is used by us. Cc: Thomas Gleixner <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: "Paul E. McKenney" <[email protected]> Cc: Marc Zyngier <[email protected]> Cc: Halil Pasic <[email protected]> Cc: Cornelia Huck <[email protected]> Cc: Vineeth Vijayan <[email protected]> Cc: Peter Oberparleiter <[email protected]> Cc: [email protected] Reviewed-by: Cornelia Huck <[email protected]> Signed-off-by: Jason Wang <[email protected]> Message-Id: <[email protected]> Signed-off-by: Michael S. Tsirkin <[email protected]> Reviewed-by: Xuan Zhuo <[email protected]>
-rw-r--r--drivers/virtio/virtio_mmio.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/virtio/virtio_mmio.c b/drivers/virtio/virtio_mmio.c
index 839684d672af..c9699a59f93c 100644
--- a/drivers/virtio/virtio_mmio.c
+++ b/drivers/virtio/virtio_mmio.c
@@ -345,6 +345,13 @@ static void vm_del_vqs(struct virtio_device *vdev)
free_irq(platform_get_irq(vm_dev->pdev, 0), vm_dev);
}
+static void vm_synchronize_cbs(struct virtio_device *vdev)
+{
+ struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vdev);
+
+ synchronize_irq(platform_get_irq(vm_dev->pdev, 0));
+}
+
static struct virtqueue *vm_setup_vq(struct virtio_device *vdev, unsigned int index,
void (*callback)(struct virtqueue *vq),
const char *name, bool ctx)
@@ -541,6 +548,7 @@ static const struct virtio_config_ops virtio_mmio_config_ops = {
.finalize_features = vm_finalize_features,
.bus_name = vm_bus_name,
.get_shm_region = vm_get_shm_region,
+ .synchronize_cbs = vm_synchronize_cbs,
};