|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH] tools/libs/evtchn: fix locking in Mini-OS
On Mon, Dec 11, 2023 at 08:10:17AM +0100, Juergen Gross wrote:
> When adding locking to tools/libs/evtchn/minios.c a semaphore was
> used. This can result in deadlocks, as the lock is taken inside the
> event handler, which can interrupt an already locked region.
Or maybe the issue was with xenevtchn_unbind() which calls
port_dealloc() which was also trying to get the mutex.
> The fix is rather simple, as Mini-OS is supporting a single vcpu
> only. So instead of the semaphore it is enough to disable interrupts
> when operating on the port list.
Semaphore implementation does that as well, so that's fine, and it works
recursively.
> Fixes: bc4fe94a69d4 ("ools/libs/evtchn: replace assert()s in stubdom with
> proper locking")
> Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
And osstest is happy with the patch:
http://logs.test-lab.xenproject.org/osstest/logs/184123/
> test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass
> test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass
So overall, patch looks fine to me:
Acked-by: Anthony PERARD <anthony.perard@xxxxxxxxxx>
Thanks,
--
Anthony PERARD
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |