diff --git a/patches.xen/c2d2e6738a20-xen-netfront-Fix-hang-on-device-removal.patch b/patches.xen/c2d2e6738a20-xen-netfront-Fix-hang-on-device-removal.patch deleted file mode 100644 index cd3e947..0000000 --- a/patches.xen/c2d2e6738a20-xen-netfront-Fix-hang-on-device-removal.patch +++ /dev/null @@ -1,53 +0,0 @@ -From c2d2e6738a209f0f9dffa2dc8e7292fc45360d61 Mon Sep 17 00:00:00 2001 -From: Jason Andryuk -Date: Wed, 28 Feb 2018 07:23:23 -0500 -Subject: [PATCH] xen-netfront: Fix hang on device removal - -A toolstack may delete the vif frontend and backend xenstore entries -while xen-netfront is in the removal code path. In that case, the -checks for xenbus_read_driver_state would return XenbusStateUnknown, and -xennet_remove would hang indefinitely. This hang prevents system -shutdown. - -xennet_remove must be able to handle XenbusStateUnknown, and -netback_changed must also wake up the wake_queue for that state as well. - -Fixes: 5b5971df3bc2 ("xen-netfront: remove warning when unloading module") - -Signed-off-by: Jason Andryuk -Cc: Eduardo Otubo -Reviewed-by: Boris Ostrovsky -Signed-off-by: Juergen Gross ---- - drivers/net/xen-netfront.c | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/drivers/net/xen-netfront.c b/drivers/net/xen-netfront.c -index 8328d395e332..3127bc8633ca 100644 ---- a/drivers/net/xen-netfront.c -+++ b/drivers/net/xen-netfront.c -@@ -2005,7 +2005,10 @@ static void netback_changed(struct xenbus_device *dev, - case XenbusStateInitialised: - case XenbusStateReconfiguring: - case XenbusStateReconfigured: -+ break; -+ - case XenbusStateUnknown: -+ wake_up_all(&module_unload_q); - break; - - case XenbusStateInitWait: -@@ -2136,7 +2139,9 @@ static int xennet_remove(struct xenbus_device *dev) - xenbus_switch_state(dev, XenbusStateClosing); - wait_event(module_unload_q, - xenbus_read_driver_state(dev->otherend) == -- XenbusStateClosing); -+ XenbusStateClosing || -+ xenbus_read_driver_state(dev->otherend) == -+ XenbusStateUnknown); - - xenbus_switch_state(dev, XenbusStateClosed); - wait_event(module_unload_q, --- -2.17.0 - diff --git a/series.conf b/series.conf index 430b8e0..bcc33d0 100644 --- a/series.conf +++ b/series.conf @@ -25,9 +25,6 @@ patches.xen/pci_op-cleanup.patch # Fix for MSI support with stubdoms patches.xen/xen-pciback-add-attribute-to-allow-MSI-enable-flag-w.patch -# Fix for hang on netfront removal -patches.xen/c2d2e6738a20-xen-netfront-Fix-hang-on-device-removal.patch - # Hardware-specific fixes, backported from newer kernel and/or developers branches patches.backports/v2-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch patches.backports/Input-synaptics---add-Intertouch-support-on-X1-Carbon-6th-and-X280.patch diff --git a/version b/version index 347c932..3c2dee5 100644 --- a/version +++ b/version @@ -1 +1 @@ -4.14.35 +4.14.41