2016-04-21 22:19 GMT+08:00 Jan Beulich : > >>> On 30.03.16 at 09:28, wrote: > > 2016-03-29 18:39 GMT+08:00 Jan Beulich : > >> --- > >> I assume this also addresses the issue which > >> > http://lists.xenproject.org/archives/html/xen-devel/2016-01/msg03189.html > >> attempted to deal with in a not really acceptable way. > > > > I hope this issue is resolved, but it still exists. > > Mind giving the small below patch a try? > > Jan > > --- unstable.orig/xen/arch/x86/msi.c > +++ unstable/xen/arch/x86/msi.c > @@ -430,8 +430,13 @@ static bool_t msi_set_mask_bit(struct ir > { > writel(flag, entry->mask_base + > PCI_MSIX_ENTRY_VECTOR_CTRL_OFFSET); > readl(entry->mask_base + PCI_MSIX_ENTRY_VECTOR_CTRL_OFFSET); > + > if ( likely(control & PCI_MSIX_FLAGS_ENABLE) ) > break; > + > + entry->msi_attrib.host_masked = host; > + entry->msi_attrib.guest_masked = guest; > + > flag = 1; > } > else if ( flag && !(control & PCI_MSIX_FLAGS_MASKALL) ) > > > The issue still exist. But, the host_masked is changed. guest_masked can be changed by guest_mask_msi_irq() function. The function is not called as previous e-mail analysis. No patch xen log message: (XEN) MSI-X 114 vec=73 lowest edge assert log lowest dest=00000555 mask=1/HG/1 (XEN) MSI-X 115 vec=7b lowest edge assert log lowest dest=00000555 mask=1/HG/1 (XEN) MSI-X 116 vec=83 lowest edge assert log lowest dest=00000555 mask=1/HG/1 Patched-xen log message : (XEN) MSI-X 114 vec=76 lowest edge assert log lowest dest=00000555 mask=1/ G/1 (XEN) MSI-X 115 vec=7e lowest edge assert log lowest dest=00000555 mask=1/ G/1 (XEN) MSI-X 116 vec=86 lowest edge assert log lowest dest=00000555 mask=1/ G/1 -- Jianzhong,Chang