spapr: Disallow unsupported kernel-irqchip settings
commit1a511340874e5a9d3b235261447d920fd8be493e
authorGreg Kurz <groug@kaod.org>
Fri, 8 Feb 2019 18:17:47 +0000 (8 19:17 +0100)
committerDavid Gibson <david@gibson.dropbear.id.au>
Sun, 17 Feb 2019 10:54:02 +0000 (17 21:54 +1100)
tree592029a89f9af23bcbd158473def9bdaedf66cf0
parentd6c666ad81f6f771ff40bb9c72dde327e6c87846
spapr: Disallow unsupported kernel-irqchip settings

Split mode doesn't make sense on pseries, neither with XICS nor XIVE. But
passing kernel-irqchip=split silently behaves like kernel-irqchip=on.
Other architectures that support kernel-irqchip do terminate QEMU when
split mode is requested but not available though. Do the same with pseries
for consistency.

Similarly, passing kernel-irqchip=on,accel=tcg starts the machine with the
emulated interrupt controller, ie, behaves like kernel-irqchip=off. However,
when passing  kernel-irqchip=on,accel=kvm, if we can't initialize the KVM
XICS for some reason, ie, xics_kvm_init() fails, then QEMU is terminated.
This is inconsistent. Terminate QEMU all the same when requesting the
in-kernel interrupt controller without KVM.

Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <154964986747.291716.2679312373018476920.stgit@bahia.lan>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
hw/ppc/spapr_irq.c