]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
.38 patches
authorGreg Kroah-Hartman <gregkh@suse.de>
Thu, 28 Apr 2011 00:48:57 +0000 (17:48 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 28 Apr 2011 00:48:57 +0000 (17:48 -0700)
queue-2.6.38/series
queue-2.6.38/virtio-console-enable-call-to-hvc_remove-on-console-port-remove.patch [new file with mode: 0644]

index df5dc8098444bd9cfbcd79f397f2bb7bc6ad9b73..0b2a16107419c98043aa4ac44c594c58387028dd 100644 (file)
@@ -36,3 +36,4 @@ acpi-pm-avoid-infinite-recurrence-while-registering-power-resources.patch
 slub-fix-panic-with-discontigmem.patch
 set-memory-ranges-in-n_normal_memory-when-onlined.patch
 flexcop-pci-fix-__xlate_proc_name-warning-for-flexcop-pci.patch
+virtio-console-enable-call-to-hvc_remove-on-console-port-remove.patch
diff --git a/queue-2.6.38/virtio-console-enable-call-to-hvc_remove-on-console-port-remove.patch b/queue-2.6.38/virtio-console-enable-call-to-hvc_remove-on-console-port-remove.patch
new file mode 100644 (file)
index 0000000..c3c63ee
--- /dev/null
@@ -0,0 +1,49 @@
+From afa2689e19073cd2e762d0f2c1358fab1ab9f18c Mon Sep 17 00:00:00 2001
+From: Amit Shah <amit.shah@redhat.com>
+Date: Mon, 14 Mar 2011 17:45:48 +0530
+Subject: virtio: console: Enable call to hvc_remove() on console port remove
+
+From: Amit Shah <amit.shah@redhat.com>
+
+commit afa2689e19073cd2e762d0f2c1358fab1ab9f18c upstream.
+
+This call was disabled as hot-unplugging one virtconsole port led to
+another virtconsole port freezing.
+
+Upon testing it again, this now works, so enable it.
+
+In addition, a bug was found in qemu wherein removing a port of one type
+caused the guest output from another port to stop working.  I doubt it
+was just this bug that caused it (since disabling the hvc_remove() call
+did allow other ports to continue working), but since it's all solved
+now, we're fine with hot-unplugging of virtconsole ports.
+
+Signed-off-by: Amit Shah <amit.shah@redhat.com>
+Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/char/virtio_console.c |   11 -----------
+ 1 file changed, 11 deletions(-)
+
+--- a/drivers/char/virtio_console.c
++++ b/drivers/char/virtio_console.c
+@@ -1280,18 +1280,7 @@ static void unplug_port(struct port *por
+               spin_lock_irq(&pdrvdata_lock);
+               list_del(&port->cons.list);
+               spin_unlock_irq(&pdrvdata_lock);
+-#if 0
+-              /*
+-               * hvc_remove() not called as removing one hvc port
+-               * results in other hvc ports getting frozen.
+-               *
+-               * Once this is resolved in hvc, this functionality
+-               * will be enabled.  Till that is done, the -EPIPE
+-               * return from get_chars() above will help
+-               * hvc_console.c to clean up on ports we remove here.
+-               */
+               hvc_remove(port->cons.hvc);
+-#endif
+       }
+       /* Remove unused data this port might have received. */