aboutsummaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorVitaly Kuznetsov <[email protected]>2016-01-27 22:29:35 -0800
committerGreg Kroah-Hartman <[email protected]>2016-02-07 21:34:12 -0800
commit415719160de3fae3bb9cbc617664649919cd00d0 (patch)
treebf877b7cbe41b2e137b52ab584310e3c1605597b /include/linux
parent79fd8e706637a5c7c41f9498fe0fbfb437abfdc8 (diff)
Drivers: hv: vmbus: avoid scheduling in interrupt context in vmbus_initiate_unload()
We have to call vmbus_initiate_unload() on crash to make kdump work but the crash can also be happening in interrupt (e.g. Sysrq + c results in such) where we can't schedule or the following will happen: [ 314.905786] bad: scheduling from the idle thread! Just skipping the wait (and even adding some random wait here) won't help: to make host-side magic working we're supposed to receive CHANNELMSG_UNLOAD (and actually confirm the fact that we received it) but we can't use interrupt-base path (vmbus_isr()-> vmbus_on_msg_dpc()). Implement a simple busy wait ignoring all the other messages and use it if we're in an interrupt context. Signed-off-by: Vitaly Kuznetsov <[email protected]> Signed-off-by: K. Y. Srinivasan <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
Diffstat (limited to 'include/linux')
0 files changed, 0 insertions, 0 deletions