group.of.nepali.translators team mailing list archive
-
group.of.nepali.translators team
-
Mailing list archive
-
Message #12925
[Bug 1682561] Re: [Hyper-V] hv: util: move waiting for release to hv_utils_transport itself
This bug was fixed in the package linux - 4.10.0-20.22
---------------
linux (4.10.0-20.22) zesty; urgency=low
* linux: 4.10.0-20.22 -proposed tracker (LP: #1684491)
* [Hyper-V] hv: util: move waiting for release to hv_utils_transport itself
(LP: #1682561)
- Drivers: hv: util: move waiting for release to hv_utils_transport itself
-- Stefan Bader <stefan.bader@xxxxxxxxxxxxx> Wed, 19 Apr 2017 16:13:16
+0200
** Changed in: linux (Ubuntu)
Status: Fix Committed => Fix Released
--
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/1682561
Title:
[Hyper-V] hv: util: move waiting for release to hv_utils_transport
itself
Status in linux package in Ubuntu:
Fix Released
Status in linux source package in Xenial:
Fix Released
Status in linux source package in Yakkety:
Fix Released
Status in linux source package in Zesty:
Fix Released
Bug description:
We are observing call traces with the -73 and -74 proposed kernels
that look like this:
[ 240.408061] INFO: task kworker/14:1:179 blocked for more than 120 seconds.
[ 240.412299] Not tainted 4.4.0-73-generic #94-Ubuntu
[ 240.415546] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[ 240.420217] kworker/14:1 D ffff8804e6f23b68 0 179 2 0x00000000
[ 240.420229] Workqueue: hv_vmbus_con vmbus_onmessage_work [hv_vmbus]
[ 240.420236] ffff8804e6f23b68 00000001810000f9 ffff8804ed944600 ffff8804e6fe3800
[ 240.420241] ffff8804e6f24000 ffffffffc0187a48 ffffffffc0187a40 ffff8804e6fe3800
[ 240.420243] ffff8804ea196800 ffff8804e6f23b80 ffffffff81837845 7fffffffffffffff
[ 240.420245] Call Trace:
[ 240.420254] [<ffffffff81837845>] schedule+0x35/0x80
[ 240.420256] [<ffffffff8183a995>] schedule_timeout+0x1b5/0x270
[ 240.420260] [<ffffffff811edf9a>] ? kfree+0x13a/0x150
[ 240.420264] [<ffffffff811ada52>] ? kfree_const+0x22/0x30
[ 240.420268] [<ffffffff813faa14>] ? kobject_release+0x94/0x190
[ 240.420270] [<ffffffff813fa8a7>] ? kobject_put+0x27/0x50
[ 240.420272] [<ffffffff818382a3>] wait_for_completion+0xb3/0x140
[ 240.420276] [<ffffffff810ac590>] ? wake_up_q+0x70/0x70
[ 240.420284] [<ffffffffc01840cf>] hv_kvp_deinit+0x4f/0x60 [hv_utils]
[ 240.420288] [<ffffffffc0183321>] util_remove+0x21/0x40 [hv_utils]
[ 240.420294] [<ffffffffc000c027>] vmbus_remove+0x27/0x30 [hv_vmbus]
[ 240.420301] [<ffffffff8155d2e1>] __device_release_driver+0xa1/0x150
[ 240.420303] [<ffffffff8155d3b3>] device_release_driver+0x23/0x30
[ 240.420306] [<ffffffff8155ca01>] bus_remove_device+0x101/0x170
[ 240.420308] [<ffffffff81558b69>] device_del+0x139/0x270
[ 240.420310] [<ffffffff81558cbe>] device_unregister+0x1e/0x60
[ 240.420313] [<ffffffffc000d82f>] vmbus_device_unregister+0x1f/0x50 [hv_vmbus]
[ 240.420316] [<ffffffffc00110c1>] vmbus_onoffer_rescind+0x91/0xb0 [hv_vmbus]
[ 240.420324] [<ffffffffc0011323>] vmbus_onmessage+0x33/0xa0 [hv_vmbus]
[ 240.420327] [<ffffffffc000d381>] vmbus_onmessage_work+0x21/0x30 [hv_vmbus]
[ 240.420331] [<ffffffff8109a555>] process_one_work+0x165/0x480
[ 240.420335] [<ffffffff8109a8bb>] worker_thread+0x4b/0x4c0
[ 240.420338] [<ffffffff8109a870>] ? process_one_work+0x480/0x480
[ 240.420341] [<ffffffff8109a870>] ? process_one_work+0x480/0x480
[ 240.420345] [<ffffffff810a0be8>] kthread+0xd8/0xf0
[ 240.420347] [<ffffffff810a0b10>] ? kthread_create_on_node+0x1e0/0x1e0
[ 240.420350] [<ffffffff8183bd0f>] ret_from_fork+0x3f/0x70
[ 240.420352] [<ffffffff810a0b10>] ? kthread_create_on_node+0x1e0/0x1e0
[ 317.360035] serial8250: too much work for irq3
The following commit should fix this issue:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e9c18ae6eb2b312f16c63e34b43ea23926daa398
Waiting for release_event in all three drivers introduced issues on release
as on_reset() hook is not always called. E.g. if the device was never
opened we will never get the completion.
Move the waiting code to hvutil_transport_destroy() and make sure it is
only called when the device is open. hvt->lock serialization should
guarantee the absence of races.
Fixes: 5a66fecbf6aa ("Drivers: hv: util: kvp: Fix a rescind processing issue")
Fixes: 20951c7535b5 ("Drivers: hv: util: Fcopy: Fix a rescind processing issue")
Fixes: d77044d142e9 ("Drivers: hv: util: Backup: Fix a rescind processing issue")
Reported-by: Dexuan Cui <decui@xxxxxxxxxxxxx>
Tested-by: Dexuan Cui <decui@xxxxxxxxxxxxx>
Signed-off-by: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>
Signed-off-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1682561/+subscriptions