[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] passthroughed msix device




On 2013-02-27 16:36, Jan Beulich wrote:
On 27.02.13 at 06:49, Zhenzhong Duan <zhenzhong.duan@xxxxxxxxxx> wrote:
On 2013-02-26 18:08, Jan Beulich wrote:
On 26.02.13 at 09:56, DuanZhenzhong <zhenzhong.duan@xxxxxxxxxx> wrote:
pci_msix_writel: Can't update entry 0 since MSI-X is already enabled
(fee00000 -> fee02000)
pci_msix_writel: Can't update entry 0 since MSI-X is already enabled
(00004059 -> 00004071)
If you look at the code issuing this message, the situation is
pretty clear (and I think it as described already in the past,
albeit I have no link at hand): qemu lacks proper emulation of
the mask bit. pci_msix_write() looks at the physical one, yet
when the guest sets the virtual mask bit, nothing is being
done at all to make the hypervisor also mask the physical
entry:

      if (offset == PCI_MSIX_ENTRY_VECTOR_CTRL) {
          if (msix->enabled && !(val & PCI_MSIX_ENTRY_CTRL_MASKBIT)) {
              xen_pt_msix_update_one(s, entry_nr);
          }
      }

There's probably quite a bit of code to be written to make this
work.
Is there plan of fixing it?
I'm not aware of anyone working on this, or having planned to.
Want to take a shot?
I'm looking at it.
zduan

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.