[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] ioemu: fix offset of MSI-X memory-mapped table.
# HG changeset patch # User Keir Fraser <keir.fraser@xxxxxxxxxx> # Date 1220609900 -3600 # Node ID 1a785d213573ebbbfb94947de16ed4e34618e727 # Parent 392b04ccaf3c3be6efda73ae75b0af386920bf20 ioemu: fix offset of MSI-X memory-mapped table. Current code does not set dev->msix->table_off variable. The offset of MSI-X memory mapped table is treated as 0. The wrong region is unmapped from guest physical memory space. As a result, guest device driver can't access memory mapped resource. Signed-off-by: Yuji Shimada <shimada-yxb@xxxxxxxxxxxxxxx> --- tools/ioemu/hw/pt-msi.c | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-) diff -r 392b04ccaf3c -r 1a785d213573 tools/ioemu/hw/pt-msi.c --- a/tools/ioemu/hw/pt-msi.c Thu Sep 04 16:29:38 2008 +0100 +++ b/tools/ioemu/hw/pt-msi.c Fri Sep 05 11:18:20 2008 +0100 @@ -313,7 +313,7 @@ int pt_msix_init(struct pt_dev *dev, int table_off = pci_read_long(pd, pos + PCI_MSIX_TABLE); bar_index = dev->msix->bar_index = table_off & PCI_MSIX_BIR; - table_off &= table_off & ~PCI_MSIX_BIR; + table_off = dev->msix->table_off = table_off & ~PCI_MSIX_BIR; dev->msix->table_base = dev->pci_dev->base_addr[bar_index]; PT_LOG("get MSI-X table bar base %llx\n", (unsigned long long)dev->msix->table_base); _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |