• Juergen Gross's avatar
    xen/events: add a new "late EOI" evtchn framework · 54c9de89
    Juergen Gross authored
    In order to avoid tight event channel related IRQ loops add a new
    framework of "late EOI" handling: the IRQ the event channel is bound
    to will be masked until the event has been handled and the related
    driver is capable to handle another event. The driver is responsible
    for unmasking the event channel via the new function xen_irq_lateeoi().
    
    This is similar to binding an event channel to a threaded IRQ, but
    without having to structure the driver accordingly.
    
    In order to support a future special handling in case a rogue guest
    is sending lots of unsolicited events, add a flag to xen_irq_lateeoi()
    which can be set by the caller to indicate the event was a spurious
    one.
    
    This is part of XSA-332.
    
    Cc: stable@vger.kernel.org
    Reported-by: default avatarJulien Grall <julien@xen.org>
    Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
    Reviewed-by: default avatarJan Beulich <jbeulich@suse.com>
    Reviewed-by: default avatarStefano Stabellini <sstabellini@kernel.org>
    Reviewed-by: default avatarWei Liu <wl@xen.org>
    54c9de89
events.h 5.01 KB