qemu-e2k/include
David Gibson 3607715a30 kvm: Introduce KVM irqchip change notifier
Awareness of an in kernel irqchip is usually local to the machine and its
top-level interrupt controller.  However, in a few cases other things need
to know about it.  In particular vfio devices need this in order to
accelerate interrupt delivery.

If interrupt routing is changed, such devices may need to readjust their
connection to the KVM irqchip.  pci_bus_fire_intx_routing_notifier() exists
to do just this.

However, for the pseries machine type we have a situation where the routing
remains constant but the top-level irq chip itself is changed.  This occurs
because of PAPR feature negotiation which allows the guest to decide
between the older XICS and newer XIVE irq chip models (both of which are
paravirtualized).

To allow devices like vfio to adjust to this change, introduce a new
notifier for the purpose kvm_irqchip_change_notify().

Cc: Alex Williamson <alex.williamson@redhat.com>
Cc: Alexey Kardashevskiy <aik@ozlabs.ru>

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Tested-by: Alex Williamson <alex.williamson@redhat.com>
Reviewed-by: Alex Williamson <alex.williamson@redhat.com>
Reviewed-by: Greg Kurz <groug@kaod.org>
Acked-by: Alex Williamson <alex.williamson@redhat.com>
2019-11-26 10:11:30 +11:00
..
authz
block nbd: Don't send oversize strings 2019-11-18 16:01:34 -06:00
chardev
crypto
disas plugin: add qemu_plugin_insn_disas helper 2019-10-28 15:12:38 +00:00
exec TCG Plugins initial implementation 2019-10-30 14:10:32 +00:00
fpu
hw * microvm docs and fixes (Sergio, Liam) 2019-11-19 16:31:27 +00:00
io
libdecnumber
migration migration: add new migration state wait-unplug 2019-10-29 18:55:26 -04:00
monitor
net
qapi
qemu tcg plugins: expose an API version concept 2019-11-12 14:32:55 +00:00
qom vl: Split off user_creatable_print_help() 2019-10-14 17:12:48 +02:00
scsi
standard-headers linux headers: update against v5.4-rc1 2019-10-15 18:09:02 +01:00
sysemu kvm: Introduce KVM irqchip change notifier 2019-11-26 10:11:30 +11:00
ui
user *-user: plugin syscalls 2019-10-28 15:12:38 +00:00
elf.h
glib-compat.h
qemu-common.h exec: Split out variable page size support to exec-vary.c 2019-10-28 10:26:02 +01:00
qemu-io.h
trace-tcg.h