mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-15 01:26:43 +07:00
virtio_console: drop custom control queue cleanup
We now cleanup all VQs on device removal - no need to handle the control VQ specially. Cc: stable@vger.kernel.org Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
a7a69ec0d8
commit
61a8950c5c
@ -1988,21 +1988,6 @@ static void remove_vqs(struct ports_device *portdev)
|
||||
kfree(portdev->out_vqs);
|
||||
}
|
||||
|
||||
static void remove_controlq_data(struct ports_device *portdev)
|
||||
{
|
||||
struct port_buffer *buf;
|
||||
unsigned int len;
|
||||
|
||||
if (!use_multiport(portdev))
|
||||
return;
|
||||
|
||||
while ((buf = virtqueue_get_buf(portdev->c_ivq, &len)))
|
||||
free_buf(buf, true);
|
||||
|
||||
while ((buf = virtqueue_detach_unused_buf(portdev->c_ivq)))
|
||||
free_buf(buf, true);
|
||||
}
|
||||
|
||||
/*
|
||||
* Once we're further in boot, we get probed like any other virtio
|
||||
* device.
|
||||
@ -2163,7 +2148,6 @@ static void virtcons_remove(struct virtio_device *vdev)
|
||||
* have to just stop using the port, as the vqs are going
|
||||
* away.
|
||||
*/
|
||||
remove_controlq_data(portdev);
|
||||
remove_vqs(portdev);
|
||||
kfree(portdev);
|
||||
}
|
||||
@ -2208,7 +2192,6 @@ static int virtcons_freeze(struct virtio_device *vdev)
|
||||
*/
|
||||
if (use_multiport(portdev))
|
||||
virtqueue_disable_cb(portdev->c_ivq);
|
||||
remove_controlq_data(portdev);
|
||||
|
||||
list_for_each_entry(port, &portdev->ports, list) {
|
||||
virtqueue_disable_cb(port->in_vq);
|
||||
|
Loading…
Reference in New Issue
Block a user