On Wed, Nov 06, 2013 at 09:42:15PM -0400, Konrad Rzeszutek Wilk wrote:
> On Wed, Nov 06, 2013 at 04:51:52PM -0700, Bjorn Helgaas wrote:
> > [+cc Thomas, Ingo, Peter, x86 list]
> > 
> > On Wed, Nov 6, 2013 at 2:16 PM, Konrad Rzeszutek Wilk
> > <konrad.w...@oracle.com> wrote:
> > > Certain platforms do not allow writes in the MSI-X bars
> > > to setup or tear down vector values. To combat against
> > > the generic code trying to write to that and either silently
> > > being ignored or crashing due to the pagetables being marked r/o
> > > this patch introduces a platform over-write.
> > >
> > > Note that we keep two separate, non-weak, functions
> > > default_mask_msi_irqs() and default_mask_msix_irqs() for the
> > > behavior of the arch_mask_msi_irqs() and arch_mask_msix_irqs(),
> > > as the default behavior is needed by x86 PCI code.
> > >
> > > For Xen, which does not allow the guest to write to MSI-X
> > > tables - as the hypervisor is solely responsible for setting
> > > the vector values - we implement two nops.
> > >
> > > CC: Bjorn Helgaas <bhelg...@google.com>
> > > CC: Sucheta Chakraborty <sucheta.chakrabo...@qlogic.com>
> > > CC: Zhenzhong Duan <zhenzhong.d...@oracle.com>
> > > Signed-off-by: Konrad Rzeszutek Wilk <konrad.w...@oracle.com>
> > 
> > I think this is safe, and I'd like to squeeze it into the v3.13 merge
> > window next week, since it supersedes three patches Zhenzhong has been
> > trying to get in since July [1], and this patch is much simpler to
> > understand.
> > 
> > I *think* this also fixes an actual bug on Xen.  Konrad, is there a
> > bugzilla or any kind of email problem description that we can include
> > here as a reference?  I think there's a lost interrupt with qlcnic,
> > but I don't know the details or what the failure looks like to a user.
> 
> It is pretty catastrophic. Here is the console log when I pass in
> a PCI device (with MSI-X) to the guest:

Perfect, thanks!  I put the log info in
https://bugzilla.kernel.org/show_bug.cgi?id=64581 and put this in
my pci/misc branch for v3.13.  I added the following to the changelog:

    This fixes a Xen guest crash when passing a PCI device with MSI-X to the
    guest.  See the bugzilla for more details.

    [bhelgaas: add bugzilla info]
    Reference: https://bugzilla.kernel.org/show_bug.cgi?id=64581

Let me know if this needs any tweaking.

Bjorn
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to