linux/drivers/xen
Juergen Gross 54c9de8989 xen/events: add a new "late EOI" evtchn framework
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: Julien Grall <julien@xen.org>
Signed-off-by: Juergen Gross <jgross@suse.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
Reviewed-by: Wei Liu <wl@xen.org>
2020-10-20 10:21:59 +02:00
..
events xen/events: add a new "late EOI" evtchn framework 2020-10-20 10:21:59 +02:00
xen-pciback treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
xenbus xen: branch for v5.9-rc4 2020-09-06 09:59:27 -07:00
xenfs
acpi.c
arm-device.c
balloon.c xen: branch for v5.9-rc4 2020-09-06 09:59:27 -07:00
biomerge.c
cpu_hotplug.c xen/cpuhotplug: Fix initial CPU offlining for PV(H) guests 2020-05-21 13:01:45 -05:00
dbgp.c
efi.c
evtchn.c xen: Use evtchn_type_t as a type for event channels 2020-04-07 12:12:54 +02:00
features.c
gntalloc.c
gntdev-common.h xen: Use evtchn_type_t as a type for event channels 2020-04-07 12:12:54 +02:00
gntdev-dmabuf.c xen/gntdev: Fix dmabuf import with non-zero sgt offset 2020-08-13 12:50:22 +02:00
gntdev-dmabuf.h
gntdev.c xen/gntdev.c: Convert get_user_pages*() to pin_user_pages*() 2020-10-04 18:41:33 -05:00
grant-table.c xen: add helpers to allocate unpopulated memory 2020-09-04 10:00:01 +02:00
Kconfig xen: branch for v5.9-rc4 2020-09-06 09:59:27 -07:00
Makefile xen: branch for v5.9-rc4 2020-09-06 09:59:27 -07:00
manage.c
mcelog.c
mem-reservation.c
pci.c
pcpu.c
platform-pci.c xen-platform: Constify dev_pm_ops 2020-05-21 13:00:39 -05:00
privcmd-buf.c
privcmd.c xen: branch for v5.9-rc4 2020-09-06 09:59:27 -07:00
privcmd.h
pvcalls-back.c xen/pvcalls: Make pvcalls_back_global static 2020-05-21 13:06:42 -05:00
pvcalls-front.c xen: remove redundant initialization of variable ret 2020-10-04 18:41:33 -05:00
pvcalls-front.h
swiotlb-xen.c xen/arm: introduce phys/dma translations in xen_dma_sync_for_* 2020-08-04 07:53:52 +02:00
sys-hypervisor.c
time.c READ_ONCE: Enforce atomicity for {READ,WRITE}_ONCE() memory accesses 2020-04-16 12:28:07 +01:00
unpopulated-alloc.c xen: add helpers to allocate unpopulated memory 2020-09-04 10:00:01 +02:00
xen-acpi-cpuhotplug.c
xen-acpi-memhotplug.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
xen-acpi-pad.c
xen-acpi-processor.c
xen-balloon.c
xen-front-pgdir-shbuf.c
xen-scsiback.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
xen-stub.c
xlate_mmu.c xen: add helpers to allocate unpopulated memory 2020-09-04 10:00:01 +02:00