]> git.baikalelectronics.ru Git - kernel.git/commit
xen/events: add a proper barrier to 2-level uevent unmasking
authorJuergen Gross <jgross@suse.com>
Mon, 7 Sep 2020 13:47:27 +0000 (15:47 +0200)
committerJuergen Gross <jgross@suse.com>
Tue, 20 Oct 2020 08:21:56 +0000 (10:21 +0200)
commit5b7bd7a4d99658728dee0e1cfcee079d33cd91d3
treedac6d35619f36e8e1c82572e84806e708251af5b
parent64dfd7a6bc158c08d01a102a3d28b1ac3d87de96
xen/events: add a proper barrier to 2-level uevent unmasking

A follow-up patch will require certain write to happen before an event
channel is unmasked.

While the memory barrier is not strictly necessary for all the callers,
the main one will need it. In order to avoid an extra memory barrier
when using fifo event channels, mandate evtchn_unmask() to provide
write ordering.

The 2-level event handling unmask operation is missing an appropriate
barrier, so add it. Fifo event channels are fine in this regard due to
using sync_cmpxchg().

This is part of XSA-332.

Cc: stable@vger.kernel.org
Suggested-by: Julien Grall <julien@xen.org>
Signed-off-by: Juergen Gross <jgross@suse.com>
Reviewed-by: Julien Grall <jgrall@amazon.com>
Reviewed-by: Wei Liu <wl@xen.org>
drivers/xen/events/events_2l.c