diff --git a/[refs] b/[refs] index 425508425070..4fc5fc4b0f98 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3709ea7ae7d698b428576c2db0bbb6e08a18cf12 +refs/heads/master: 8529a504273d4efa6bb004dcd6ef28fe67b64ae9 diff --git a/trunk/drivers/char/virtio_console.c b/trunk/drivers/char/virtio_console.c index 92f1f65d57a9..47b710ca4ab3 100644 --- a/trunk/drivers/char/virtio_console.c +++ b/trunk/drivers/char/virtio_console.c @@ -663,6 +663,10 @@ static unsigned int port_fops_poll(struct file *filp, poll_table *wait) port = filp->private_data; poll_wait(filp, &port->waitqueue, wait); + if (!port->guest_connected) { + /* Port got unplugged */ + return POLLHUP; + } ret = 0; if (!will_read_block(port)) ret |= POLLIN | POLLRDNORM;