2016-04-21 22:19 GMT+08:00 Jan Beulich <jbeul...@suse.com>:

> >>> On 30.03.16 at 09:28, <chang...@gmail.com> wrote:
> > 2016-03-29 18:39 GMT+08:00 Jan Beulich <jbeul...@suse.com>:
> >> ---
> >> 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
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

Reply via email to