[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] xen vtd : set msi guest_masked 0 by default
There are some problems when msi guest_masked is set to 1 by default. When guest os is windows 2008 r2 server, the device(eg X540-AT2 vf) is not initialized correctly. Host will always receive message like this :"VF Reset msg received from vf". Guest has network connectivity issues, and can not correctly receive/send the packet. So, guest_masked is set to 0 by default. Signed-off-by: Jianzhong,Chang <changjzh@xxxxxxxxx> --- xen/arch/x86/msi.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/msi.c b/xen/arch/x86/msi.c index 5a481f6..b4f60a3 100644 --- a/xen/arch/x86/msi.c +++ b/xen/arch/x86/msi.c @@ -512,7 +512,7 @@ void guest_mask_msi_irq(struct irq_desc *desc, bool_t mask) static unsigned int startup_msi_irq(struct irq_desc *desc) { - if ( unlikely(!msi_set_mask_bit(desc, 0, !!(desc->status & IRQ_GUEST))) ) + if ( unlikely(!msi_set_mask_bit(desc, 0, 0) )) WARN(); return 0; } @@ -972,7 +972,7 @@ static int msix_capability_init(struct pci_dev *dev, entry->msi_attrib.entry_nr = msi->entry_nr; entry->msi_attrib.maskbit = 1; entry->msi_attrib.host_masked = 1; - entry->msi_attrib.guest_masked = 1; + entry->msi_attrib.guest_masked = 0; entry->msi_attrib.pos = pos; entry->irq = msi->irq; entry->dev = dev; -- 1.7.1 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |