[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] [IOMMU] interrupt remapping fix
Fix the error of translation from int remapping table entry(IRTE) to MSI msg. This error may write wrong IRTE back to the VTd hardware, and block physical interrupts. Signed-Off-By: Zhai Edwin <edwin.zhai@xxxxxxxxx> -- best rgds, edwin Index: xen-dev/xen/drivers/passthrough/vtd/intremap.c =================================================================== --- xen-dev.orig/xen/drivers/passthrough/vtd/intremap.c +++ xen-dev/xen/drivers/passthrough/vtd/intremap.c @@ -468,8 +468,12 @@ static int remap_entry_to_msi_msg( MSI_ADDR_DESTMODE_LOGIC) | ((iremap_entry->lo.dlm != dest_LowestPrio) ? MSI_ADDR_REDIRECTION_CPU: - MSI_ADDR_REDIRECTION_LOWPRI) | - iremap_entry->lo.dst >> 8; + MSI_ADDR_REDIRECTION_LOWPRI); + if ( x2apic_enabled ) + msg->dest32 = iremap_entry->lo.dst; + else + msg->address_lo |= + ((iremap_entry->lo.dst >> 8) & 0xff ) << MSI_ADDR_DEST_ID_SHIFT; msg->data = MSI_DATA_TRIGGER_EDGE | _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |