summaryrefslogtreecommitdiff
path: root/drivers/virtio/virtio_input.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2025-08-27 10:19:35 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2025-08-27 10:19:35 -0700
commit39f90c1967215375f7d87b81d14b0f3ed6b40c29 (patch)
tree6f82b5978f946f2117d2e7dff4a0a25cc0633e1d /drivers/virtio/virtio_input.c
parent518b21ba139cefa2ee7f9fcf516fdc6743e8db68 (diff)
parent45d8ef6322b8a828d3b1e2cfb8893e2ff882cb23 (diff)
Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost
Pull virtio/vhost fixes from Michael Tsirkin: "More small fixes. Most notably this fixes a messed up ioctl number, and a regression in shmem affecting drm users" * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost: virtio_net: adjust the execution order of function `virtnet_close` during freeze virtio_input: Improve freeze handling vhost: Fix ioctl # for VHOST_[GS]ET_FORK_FROM_OWNER Revert "virtio: reject shm region if length is zero" vhost/net: Protect ubufs with rcu read lock in vhost_net_ubuf_put() virtio_pci: Fix misleading comment for queue vector
Diffstat (limited to 'drivers/virtio/virtio_input.c')
-rw-r--r--drivers/virtio/virtio_input.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/virtio/virtio_input.c b/drivers/virtio/virtio_input.c
index a5d63269f20b..d0728285b6ce 100644
--- a/drivers/virtio/virtio_input.c
+++ b/drivers/virtio/virtio_input.c
@@ -360,11 +360,15 @@ static int virtinput_freeze(struct virtio_device *vdev)
{
struct virtio_input *vi = vdev->priv;
unsigned long flags;
+ void *buf;
spin_lock_irqsave(&vi->lock, flags);
vi->ready = false;
spin_unlock_irqrestore(&vi->lock, flags);
+ virtio_reset_device(vdev);
+ while ((buf = virtqueue_detach_unused_buf(vi->sts)) != NULL)
+ kfree(buf);
vdev->config->del_vqs(vdev);
return 0;
}