virtio: console: Resize console port 0 on config intr only if multiport is off
authorAmit Shah <amit.shah@redhat.com>
Wed, 5 May 2010 20:35:07 +0000 (02:05 +0530)
committerRusty Russell <rusty@rustcorp.com.au>
Wed, 19 May 2010 12:45:50 +0000 (22:15 +0930)
When using multiport, we'll use control messages. Ensure we don't
accidentally update port 0 size on config interrupts.

Signed-off-by: Amit Shah <amit.shah@redhat.com>
CC: Christian Borntraeger <borntraeger@de.ibm.com>
CC: linuxppc-dev@ozlabs.org
CC: Kusanagi Kouichi <slash@ac.auone-net.jp>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
drivers/char/virtio_console.c

index 4175a2a..1e3f467 100644 (file)
@@ -1319,13 +1319,16 @@ static void config_intr(struct virtio_device *vdev)
 
        portdev = vdev->priv;
 
-       /*
-        * We'll use this way of resizing only for legacy support.
-        * For newer userspace (VIRTIO_CONSOLE_F_MULTPORT+), use
-        * control messages to indicate console size changes so that
-        * it can be done per-port
-        */
-       resize_console(find_port_by_id(portdev, 0));
+       if (!use_multiport(portdev)) {
+               /*
+                * We'll use this way of resizing only for legacy
+                * support.  For newer userspace
+                * (VIRTIO_CONSOLE_F_MULTPORT+), use control messages
+                * to indicate console size changes so that it can be
+                * done per-port.
+                */
+               resize_console(find_port_by_id(portdev, 0));
+       }
 }
 
 static int init_vqs(struct ports_device *portdev)