Hang on network interface removal in Xen virtual machine
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Fix Released
|
Medium
|
Unassigned | ||
Bionic |
Fix Released
|
Medium
|
Unassigned |
Bug Description
== SRU Justification ==
Upstream commit 5b5971df3bc2 introduced a regression in v4.15-rc2. This
regression causes a hang on network interface removal in Xen virtual machine.
This regression is fixed by commit c2d2e6738a209 in v4.16-rc4.
== Fix ==
c2d2e6738a20 ("xen-netfront: Fix hang on device removal")
== Regression Potential ==
Low. Fixes a current regression and specific to Xen.
== Test Case ==
A test kernel was built with this patch and tested by the original bug reporter.
The bug reporter states the test kernel resolved the bug.
On a hosting platform running Xen hypervisor, in a virtual machine with Ubuntu 18.04 system and the default kernel from Ubuntu, I try to detach a virtual network interface. On the Xen side, the virtual interface is removed from the VM but the kernel still has the interface. Then a couple of minutes afterwards, the kernel log show this kernel trace:
INFO: task xenwatch:108 blocked for more than 120 seconds.
Tainted: G W 4.15.0-20-generic #21-Ubuntu
"echo 0 > /proc/sys/
xenwatch D 0 108 2 0x80000000
Call Trace:
__schedule+
schedule+0x2c/0x80
xennet_
? wait_woken+
xenbus_
device_
device_
bus_remove_
? xenbus_
device_
? xenbus_
? xenbus_
device_
xenbus_
? xenwatch_
frontend_
xenwatch_
? wait_woken+
kthread+
? find_watch+
? kthread_
ret_from_
In the git repository of Linux, the commit c2d2e6738a209f0
I rebuilded the Ubuntu kernel from the package source and applied this patch. Once the VM has booted with the new kernel, I was able to remove network interface without hangs from the kernel.
I also booted the VM with the Ubuntu kernel 4.13.0-42-generic and was able to remove the network interface with success.
ProblemType: Bug
DistroRelease: Ubuntu 18.04
Package: linux-image-
ProcVersionSign
Uname: Linux 4.15.0-20-generic x86_64
ApportVersion: 2.20.9-0ubuntu7
Architecture: amd64
Date: Wed May 16 16:36:06 2018
ProcEnviron:
TERM=rxvt-unicode
PATH=(custom, no user)
LANG=en_US.UTF-8
SHELL=/bin/bash
SourcePackage: linux-signed
UpgradeStatus: No upgrade log present (probably fresh install)
affects: | linux-signed (Ubuntu) → linux (Ubuntu) |
Changed in linux (Ubuntu): | |
importance: | Undecided → Medium |
status: | New → Triaged |
Changed in linux (Ubuntu Bionic): | |
importance: | Undecided → Medium |
status: | New → Triaged |
Changed in linux (Ubuntu): | |
assignee: | nobody → Joseph Salisbury (jsalisbury) |
Changed in linux (Ubuntu Bionic): | |
assignee: | nobody → Joseph Salisbury (jsalisbury) |
status: | Triaged → In Progress |
Changed in linux (Ubuntu): | |
status: | Triaged → In Progress |
Changed in linux (Ubuntu Bionic): | |
status: | In Progress → Fix Committed |
Changed in linux (Ubuntu): | |
status: | In Progress → Fix Released |
I built a test kernel with commit c2d2e6738a209f0 f9dffa2dc8e7292 fc45360d61. The test kernel can be downloaded from: kernel. ubuntu. com/~jsalisbury /lp1771620
http://
Can you test this kernel and see if it resolves this bug?
Note about installing test kernels: unsigned, linux-modules and linux-modules-extra .deb packages.
• If the test kernel is prior to 4.15(Bionic) you need to install the linux-image and linux-image-extra .deb packages.
• If the test kernel is 4.15(Bionic) or newer, you need to install the linux-image-
Thanks in advance!