]> git.proxmox.com Git - qemu.git/commitdiff
pci: don't ignore invalid parameter for pci_register_bar().
authorIsaku Yamahata <yamahata@valinux.co.jp>
Thu, 9 Sep 2010 02:48:56 +0000 (11:48 +0900)
committerMichael S. Tsirkin <mst@redhat.com>
Mon, 13 Sep 2010 19:03:51 +0000 (21:03 +0200)
Abort when invalid value for region_num is passed to pci_register_bar.
That is caller's bug. Abort instead of silently ignoring invalid value.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
hw/pci.c

index c28b8a18355e48a503862bf4c94a61a8f1c523e4..8f48d9b080fe95b9c608ff09fb4aa095289216a3 100644 (file)
--- a/hw/pci.c
+++ b/hw/pci.c
@@ -765,9 +765,8 @@ void pci_register_bar(PCIDevice *pci_dev, int region_num,
     uint32_t addr;
     uint64_t wmask;
 
-    if ((unsigned int)region_num >= PCI_NUM_REGIONS)
-        return;
-
+    assert(region_num >= 0);
+    assert(region_num < PCI_NUM_REGIONS);
     if (size & (size-1)) {
         fprintf(stderr, "ERROR: PCI region size must be pow2 "
                     "type=0x%x, size=0x%"FMT_PCIBUS"\n", type, size);