| From: "Michael S. Tsirkin" <mst@redhat.com> |
| Date: Fri, 20 Apr 2018 20:49:04 +0300 |
| Subject: virtio_console: drop custom control queue cleanup |
| |
| commit 61a8950c5c5708cf2068b29ffde94e454e528208 upstream. |
| |
| We now cleanup all VQs on device removal - no need |
| to handle the control VQ specially. |
| |
| Signed-off-by: Michael S. Tsirkin <mst@redhat.com> |
| Signed-off-by: Ben Hutchings <ben@decadent.org.uk> |
| --- |
| drivers/char/virtio_console.c | 17 ----------------- |
| 1 file changed, 17 deletions(-) |
| |
| --- a/drivers/char/virtio_console.c |
| +++ b/drivers/char/virtio_console.c |
| @@ -1980,21 +1980,6 @@ static void remove_vqs(struct ports_devi |
| 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. |
| @@ -2144,7 +2129,6 @@ static void virtcons_remove(struct virti |
| * have to just stop using the port, as the vqs are going |
| * away. |
| */ |
| - remove_controlq_data(portdev); |
| remove_vqs(portdev); |
| kfree(portdev); |
| } |
| @@ -2189,7 +2173,6 @@ static int virtcons_freeze(struct virtio |
| */ |
| 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); |