mirror of
https://github.com/xemu-project/xemu.git
synced 2025-02-26 07:27:39 +00:00
virtio-serial: Make sure virtqueue is ready before discarding data
This can happen if a port gets unplugged before guest has chance to initialise vqs. Reported-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Amit Shah <amit.shah@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
4e79bcbb96
commit
7185f9315b
@ -117,6 +117,9 @@ static void discard_vq_data(VirtQueue *vq, VirtIODevice *vdev)
|
|||||||
{
|
{
|
||||||
VirtQueueElement elem;
|
VirtQueueElement elem;
|
||||||
|
|
||||||
|
if (!virtio_queue_ready(vq)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
while (virtqueue_pop(vq, &elem)) {
|
while (virtqueue_pop(vq, &elem)) {
|
||||||
virtqueue_push(vq, &elem, 0);
|
virtqueue_push(vq, &elem, 0);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user