[Bug 203874] MSI/MSI-X interrupts don't work in VMware virtual machines

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Mon Oct 26 18:26:40 UTC 2015


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=203874

bhavesh at vmware.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jfvogel at gmail.com

--- Comment #5 from bhavesh at vmware.com ---
(In reply to Marius Strobl from comment #4)

Thanks for the additional background. I had not found those in my searching.

It seems
https://lists.freebsd.org/pipermail/freebsd-stable/2012-October/070220.html is
being used as the authoritative reasoning behind blacklisting VMware VMs (via
the PCI bridge and PCIe root port VID/DID) for lack of MSI-X support.

Unfortunately that e-mail/thread doesn't give more details than:

--quote--
When my driver would first attempt to get some vectors the Linux code would go
look at the vector table, but the way the PCI code in FreeBSD works that table
is not set up yet, so Linux would see no legitimate vectors in the table, and
decide the guest was ineligible for MSIX :(, but by this time the FreeBSD code
actually DID write some vectors into the table, and thus when you load the
driver the SECOND time Linux would see the table populated and TADA!! would
enable the guest to use MSIX.

Now, I went thru a bunch of efforts via our Linux team here to have the KVM
code fixed, its design was bogus, and I believe it has been, but it sounds like
maybe
VMWare has the same broken design??
--end-quote--

Need more details, like why the author of that e-mail believes "its design was
bogus" and can he mention the GIT commit or a link to the discussion where it
was supposedly "fixed" in KVM?

I'm Cc'ing Jack directly. Hopefully the e-mail address is still valid.

Thanks.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list