summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2026-09-14 16:07:44 +0100
committerMark Brown <broonie@kernel.org>2026-09-14 16:07:44 +0100
commitc140ac22b355a72d001d99c15f38ce03649d8dbc (patch)
tree6888a1325635cf54d140ba709bf722a353013359 /arch
parent248d4fc0a14c65e057c4fe72e56a3ca8b38d3200 (diff)
parentdd886653d2038a510a21bff476fa1be0422a4fb9 (diff)
downloadlinux-next-c140ac22b355a72d001d99c15f38ce03649d8dbc.tar.gz
linux-next-c140ac22b355a72d001d99c15f38ce03649d8dbc.zip
Merge branch 'linux-next' of https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git
Diffstat (limited to 'arch')
-rw-r--r--arch/um/drivers/virtio_uml.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/um/drivers/virtio_uml.c b/arch/um/drivers/virtio_uml.c
index 7425a8548141..1f2e62e29a27 100644
--- a/arch/um/drivers/virtio_uml.c
+++ b/arch/um/drivers/virtio_uml.c
@@ -20,6 +20,7 @@
*
* Based on Virtio MMIO driver by Pawel Moll, copyright 2011-2014, ARM Ltd.
*/
+#include <linux/interrupt.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/platform_device.h>
@@ -869,6 +870,14 @@ static void vu_reset(struct virtio_device *vdev)
vu_dev->status = 0;
}
+static void vu_synchronize_cbs(struct virtio_device *vdev)
+{
+ struct virtio_uml_device *vu_dev = to_virtio_uml_device(vdev);
+
+ if (vu_dev->irq != UM_IRQ_ALLOC)
+ synchronize_irq(vu_dev->irq);
+}
+
static void vu_del_vq(struct virtqueue *vq)
{
struct virtio_uml_vq_info *info = vq->priv;
@@ -1121,6 +1130,7 @@ static const struct virtio_config_ops virtio_uml_config_ops = {
.reset = vu_reset,
.find_vqs = vu_find_vqs,
.del_vqs = vu_del_vqs,
+ .synchronize_cbs = vu_synchronize_cbs,
.get_features = vu_get_features,
.finalize_features = vu_finalize_features,
.bus_name = vu_bus_name,