]> xenbits.xensource.com Git - qemu-xen-3.4-testing.git/commitdiff
check mmap return value when mapping MSI-x table
authorIan Jackson <ian.jackson@eu.citrix.com>
Mon, 26 Jan 2009 12:07:15 +0000 (12:07 +0000)
committerIan Jackson <Ian.Jackson@eu.citrix.com>
Mon, 26 Jan 2009 12:07:15 +0000 (12:07 +0000)
Signed-off-by: Yu Zhao <yu.zhao@intel.com>
hw/pt-msi.c

index c515c02b2c7a18701f6a8b460151c6f17d74fbcc..4f25186496e8ca674f4148470cfb4da63c53cf52 100644 (file)
@@ -322,6 +322,12 @@ int pt_msix_init(struct pt_dev *dev, int pos)
     dev->msix->phys_iomem_base = mmap(0, total_entries * 16,
                           PROT_WRITE | PROT_READ, MAP_SHARED | MAP_LOCKED,
                           dev->msix->fd, dev->msix->table_base + table_off);
+    if ( dev->msix->phys_iomem_base == MAP_FAILED )
+    {
+        PT_LOG("Can't map physical MSI-X table: %s\n", strerror(errno));
+        return -1;
+    }
+
     PT_LOG("mapping physical MSI-X table to %lx\n",
            (unsigned long)dev->msix->phys_iomem_base);
     return 0;