s390x/pci: check for invalid function handle
authorFrank Blaschka <blaschka@linux.vnet.ibm.com>
Fri, 16 Jan 2015 13:55:21 +0000 (14:55 +0100)
committerCornelia Huck <cornelia.huck@de.ibm.com>
Tue, 3 Feb 2015 12:42:40 +0000 (13:42 +0100)
broken guest may provide 0 (invalid) function handle to zpci
instructions. Since we use function handle 0 to indicate an empty
slot in the PHB we have to add an additional check to spot this
kind of error.

Signed-off-by: Frank Blaschka <blaschka@linux.vnet.ibm.com>
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
hw/s390x/s390-pci-bus.c

index d25ac74..dc455a2 100644 (file)
@@ -170,7 +170,7 @@ S390PCIBusDevice *s390_pci_find_dev_by_fh(uint32_t fh)
     S390pciState *s = S390_PCI_HOST_BRIDGE(
         object_resolve_path(TYPE_S390_PCI_HOST_BRIDGE, NULL));
 
-    if (!s) {
+    if (!s || !fh) {
         return NULL;
     }