On Wed, Dec 01 2021 at 11:47, Dave Jiang wrote:
On 12/1/2021 11:41 AM, Thomas Gleixner wrote:Confused. Are you talking about passing a full IDXD device to the guest
The hardware implementation does not have enough MSIX vectors forHi Thomas. This is actually the IDXD usage for a mediated device passedWhich makes a lot of sense.
to a guest kernel when we plumb the pass through of IMS to the guest
rather than doing previous implementation of having a MSIX vector on
guest backed by IMS.
The control block for the mediated device is emulated and therefore anWhy? What's wrong with using straight MSI-X for all of them?
emulated MSIX vector will be surfaced as vector 0. However the queues
will backed by IMS vectors. So we end up needing MSIX and IMS coexist
running on the guest kernel for the same device.
guests. There are only 9 MSIX vectors total (8 for queues) and 2048 IMS
vectors. So if we are to do MSI-X for all of them, then we need to do
the IMS backed MSIX scheme rather than passthrough IMS to guests.
or about passing a carved out subdevice, aka. queue?
Thanks,
tglx