]> git.baikalelectronics.ru Git - kernel.git/commit
um: time-travel: Fix IRQ handling in time_travel_handle_message()
authorJohannes Berg <johannes.berg@intel.com>
Thu, 10 Sep 2020 09:31:12 +0000 (11:31 +0200)
committerRichard Weinberger <richard@nod.at>
Sun, 11 Oct 2020 21:13:20 +0000 (23:13 +0200)
commitb5ccdbe0cd946539073da825565db398660de748
tree1af3fa2aeb094eb61b0709aa279696a469b213da
parent266ccc739d4fc43f28d84a250384e019bb5cd407
um: time-travel: Fix IRQ handling in time_travel_handle_message()

As the comment here indicates, we need to do the polling in the
idle loop without blocking interrupts, since interrupts can be
vhost-user messages that we must process even while in our idle
loop.

I don't know why I explained one thing and implemented another,
but we have indeed observed random hangs due to this, depending
on the timing of the messages.

Fixes: 9dc2eb8ae9d4 ("um: Implement time-travel=ext")
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Acked-By: Anton Ivanov <anton.ivanov@cambridgegreys.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
arch/um/kernel/time.c