spapr/xive: Mask the EAS when allocating an IRQ
commitf55750e4e4fb35b6a12c81c485f16494e2c61ad2
authorCédric Le Goater <clg@kaod.org>
Tue, 13 Aug 2019 16:44:20 +0000 (13 18:44 +0200)
committerDavid Gibson <david@gibson.dropbear.id.au>
Wed, 21 Aug 2019 07:17:39 +0000 (21 17:17 +1000)
tree3f107fa40a9191b3e4fd6a5a169ee18282530891
parentfd38b1629cdb73da17e6fa294168e0c1bb1ccb07
spapr/xive: Mask the EAS when allocating an IRQ

If an IRQ is allocated and not configured, such as a MSI requested by
a PCI driver, it can be saved in its default state and possibly later
on restored using the same state. If not initially MASKED, KVM will
try to find a matching priority/target tuple for the interrupt and
fail to restore the VM because 0/0 is not a valid target.

When allocating a IRQ number, the EAS should be set to a sane default :
VALID and MASKED.

Reported-by: Satheesh Rajendran <sathnaga@linux.vnet.ibm.com>
Signed-off-by: Cédric Le Goater <clg@kaod.org>
Message-Id: <20190813164420.9829-1-clg@kaod.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
hw/intc/spapr_xive.c