Messages in this thread | | | Date | Fri, 20 Jan 2023 08:24:11 +0100 | Subject | Re: [PATCH] xen/pvcalls-back: fix permanently masked event channel | From | Juergen Gross <> |
| |
On 19.01.23 22:11, Volodymyr Babchuk wrote: > There is a sequence of events that can lead to a permanently masked > event channel, because xen_irq_lateeoi() is newer called. This happens > when a backend receives spurious write event from a frontend. In this > case pvcalls_conn_back_write() returns early and it does not clears the > map->write counter. As map->write > 0, pvcalls_back_ioworker() returns > without calling xen_irq_lateeoi(). This leaves the event channel in > masked state, a backend does not receive any new events from a > frontend and the whole communication stops. > > Move atomic_set(&map->write, 0) to the very beginning of > pvcalls_conn_back_write() to fix this issue. > > Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com> > Reported-by: Oleksii Moisieiev <oleksii_moisieiev@epam.com>
Reviewed-by: Juergen Gross <jgross@suse.com>
Juergen
[unhandled content-type:application/pgp-keys][unhandled content-type:application/pgp-signature] | |