Comment 0 for bug 1771620

Revision history for this message
aegiap (nicolas-chipaux) wrote :

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/kernel/hung_task_timeout_secs" disables this message.
xenwatch D 0 108 2 0x80000000
Call Trace:
 __schedule+0x297/0x8b0
 schedule+0x2c/0x80
 xennet_remove+0xda/0x1c0
 ? wait_woken+0x80/0x80
 xenbus_dev_remove+0x54/0xa0
 device_release_driver_internal+0x15b/0x220
 device_release_driver+0x12/0x20
 bus_remove_device+0xec/0x160
 ? xenbus_otherend_changed+0x110/0x110
 device_del+0x13d/0x360
 ? xenbus_otherend_changed+0x110/0x110
 ? xenbus_otherend_changed+0x110/0x110
 device_unregister+0x1a/0x60
 xenbus_dev_changed+0xa3/0x1e0
 ? xenwatch_thread+0xcc/0x160
 frontend_changed+0x21/0x50
 xenwatch_thread+0xc4/0x160
 ? wait_woken+0x80/0x80
 kthread+0x121/0x140
 ? find_watch+0x40/0x40
 ? kthread_create_worker_on_cpu+0x70/0x70
 ret_from_fork+0x35/0x40

In the git repository of Linux, the commit c2d2e6738a209f0f9dffa2dc8e7292fc45360d61 (xen-netfront: Fix hang on device removal) https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=c2d2e6738a209f0f9dffa2dc8e7292fc45360d61 seems to be related to this situation.

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-4.15.0-20-generic 4.15.0-20.21
ProcVersionSignature: Ubuntu 4.15.0-20.21-generic 4.15.17
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)