On 3/6/21 11:18 AM, Juergen Gross wrote: > An event channel should be kept masked when an eoi is pending for it. > When being migrated to another cpu it might be unmasked, though. > > In order to avoid this keep three different flags for each event channel > to be able to distinguish "normal" masking/unmasking from eoi related > masking/unmasking and temporary masking. The event channel should only > be able to generate an interrupt if all flags are cleared. > > Cc: stable@xxxxxxxxxxxxxxx > Fixes: 54c9de89895e0a36047 ("xen/events: add a new late EOI evtchn framework") > Reported-by: Julien Grall <julien@xxxxxxx> > Signed-off-by: Juergen Gross <jgross@xxxxxxxx> > Reviewed-by: Julien Grall <jgrall@xxxxxxxxxx> > --- > V2: > - introduce a lock around masking/unmasking > - merge patch 3 into this one (Jan Beulich) > V4: > - don't set eoi masking flag in lateeoi_mask_ack_dynirq() Reviewed-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx> Ross, are you planning to test this? -boris