]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
xen/evtchn: avoid WARN() when unbinding an event channel
authorJuergen Gross <jgross@suse.com>
Wed, 13 Mar 2024 07:14:08 +0000 (08:14 +0100)
committerSasha Levin <sashal@kernel.org>
Tue, 26 Mar 2024 22:20:09 +0000 (18:20 -0400)
commit99e425032c6ec13584d3cd33846e0c7307501b47
tree9c4784eed043561017c4013d0f8e6ba4286ea5c9
parentf0f52af461df524d7b396bbe61c1f263808802dc
xen/evtchn: avoid WARN() when unbinding an event channel

[ Upstream commit 51c23bd691c0f1fb95b29731c356c6fd69925d17 ]

When unbinding a user event channel, the related handler might be
called a last time in case the kernel was built with
CONFIG_DEBUG_SHIRQ. This might cause a WARN() in the handler.

Avoid that by adding an "unbinding" flag to struct user_event which
will short circuit the handler.

Fixes: 9e90e58c11b7 ("xen: evtchn: Allow shared registration of IRQ handers")
Reported-by: Demi Marie Obenour <demi@invisiblethingslab.com>
Tested-by: Demi Marie Obenour <demi@invisiblethingslab.com>
Signed-off-by: Juergen Gross <jgross@suse.com>
Reviewed-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Link: https://lore.kernel.org/r/20240313071409.25913-2-jgross@suse.com
Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/xen/evtchn.c