qemu/hw/vfio
Eric Farman 6178d4689a vfio-ccw: Permit missing IRQs
Commit 690e29b911 ("vfio-ccw: Refactor ccw irq handler") changed
one of the checks for the IRQ notifier registration from saying
"the host needs to recognize the only IRQ that exists" to saying
"the host needs to recognize ANY IRQ that exists."

And this worked fine, because the subsequent change to support the
CRW IRQ notifier doesn't get into this code when running on an older
kernel, thanks to a guard by a capability region. The later addition
of the REQ(uest) IRQ by commit b2f96f9e4f ("vfio-ccw: Connect the
device request notifier") broke this assumption because there is no
matching capability region. Thus, running new QEMU on an older
kernel fails with:

  vfio: unexpected number of irqs 2

Let's adapt the message here so that there's a better clue of what
IRQ is missing.

Furthermore, let's make the REQ(uest) IRQ not fail when attempting
to register it, to permit running vfio-ccw on a newer QEMU with an
older kernel.

Fixes: b2f96f9e4f ("vfio-ccw: Connect the device request notifier")
Signed-off-by: Eric Farman <farman@linux.ibm.com>
Message-Id: <20210421152053.2379873-1-farman@linux.ibm.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
2021-05-20 14:19:30 +02:00
..
amd-xgbe.c
ap.c Do not include cpu.h if it's not really necessary 2021-05-02 17:24:51 +02:00
calxeda-xgmac.c
ccw.c vfio-ccw: Permit missing IRQs 2021-05-20 14:19:30 +02:00
common.c vfio/migrate: Move switch of dirty tracking into vfio_memory_listener 2021-03-16 10:06:44 -06:00
display.c Do not include sysemu/sysemu.h if it's not really necessary 2021-05-02 17:24:50 +02:00
igd.c docs: Fix some typos (found by codespell) 2020-11-18 09:29:41 +01:00
Kconfig hw/vfio: Move the IGD quirk code to a separate file 2020-02-06 11:55:42 -07:00
meson.build vfio: Add migration region initialization and finalize function 2020-11-01 12:30:50 -07:00
migration.c Do not include cpu.h if it's not really necessary 2021-05-02 17:24:51 +02:00
pci-quirks.c hw: Remove superfluous includes of hw/hw.h 2021-05-02 17:24:50 +02:00
pci.c Do not include sysemu/sysemu.h if it's not really necessary 2021-05-02 17:24:50 +02:00
pci.h hw/vfio/pci-quirks: Replace the word 'blacklist' 2021-03-16 10:06:44 -06:00
platform.c hw/vfio: Use lock guard macros 2020-11-01 12:30:52 -07:00
spapr.c Do not include cpu.h if it's not really necessary 2021-05-02 17:24:51 +02:00
trace-events hw/vfio/pci-quirks: Replace the word 'blacklist' 2021-03-16 10:06:44 -06:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00