]> xenbits.xensource.com Git - qemu-xen-3.4-testing.git/commitdiff
passthrough: Fix MSI-x devices assignment.
authorIan Jackson <ian.jackson@eu.citrix.com>
Mon, 4 Jan 2010 17:49:06 +0000 (17:49 +0000)
committerIan Jackson <Ian.Jackson@eu.citrix.com>
Mon, 4 Jan 2010 17:49:06 +0000 (17:49 +0000)
Currenlty, assigned MSI-x devices fails to
work due to incorrect table_offset_adjust setting.
The last field msix_entryof struct pt_msix_info is
a variable-size array, so there shouldn't be any field
after it, otherwise they maybe destroyed
when access msix_entry.

Signed-off-by: Xiantao Zhang <xiantao.zhang@xiantao.zhang@intel.com>
hw/pass-through.h

index dc06a4f810e2f5d6874f75b6d503657ac11f63f0..3156897ca255805935e5a8d19a2a7388bc86ae15 100644 (file)
@@ -189,11 +189,11 @@ struct pt_msix_info {
     int bar_index;
     uint64_t table_base;
     uint32_t table_off;
+    uint32_t table_offset_adjust;      /* page align mmap */
     uint64_t mmio_base_addr;
     int mmio_index;
     void *phys_iomem_base;
     struct msix_entry_info msix_entry[0];
-    uint32_t table_offset_adjust;      /* page align mmap */
 };
 
 struct pt_pm_info {