public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* vPASID capability for VF
@ 2023-05-09  8:34 Tian, Kevin
  2023-05-09 22:43 ` Jason Gunthorpe
  2023-05-10 17:24 ` Alex Williamson
  0 siblings, 2 replies; 21+ messages in thread
From: Tian, Kevin @ 2023-05-09  8:34 UTC (permalink / raw)
  To: Alex Williamson, Jason Gunthorpe
  Cc: kvm@vger.kernel.org, linux-kernel@vger.kernel.org, Liu, Yi L,
	Nicolin Chen, Lu, Baolu

According to PCIe spec (7.8.9 PASID Extended Capability Structure):

  The PASID configuration of the single non-VF Function representing
  the device is also used by all VFs in the device. A PF is permitted
  to implement the PASID capability, but VFs must not implement it.

To enable PASID on VF then one open is where to locate the PASID
capability in VF's vconfig space. vfio-pci doesn't know which offset
may contain VF specific config registers. Finding such offset must
come from a device specific knowledge.

iirc we haven't closed this open in previous discussion. It's probably
right time to revisit it and agree on a solution now.

Three options on the table:

1) Use vfio-pci variant driver. Easy to support especially when the VF
   also plans to support live migration. is it overburdened otherwise?

2) Have vfio-pci maintain a table tracking hard-coded offset per
   vendor/device ID.

3) Extend PCI core to allow PF driver specifying the offset for VF

Which one is cleanest in your view?

Thanks
Kevin

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2023-07-27  1:17 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-05-09  8:34 vPASID capability for VF Tian, Kevin
2023-05-09 22:43 ` Jason Gunthorpe
2023-05-09 22:57   ` Tian, Kevin
2023-05-09 23:13     ` Jason Gunthorpe
2023-05-09 23:41       ` Tian, Kevin
2023-05-10  0:31         ` Alex Williamson
2023-05-10  0:59           ` Jason Gunthorpe
2023-05-10  2:16             ` Tian, Kevin
2023-05-10 20:39               ` Jason Gunthorpe
2023-05-11  7:42                 ` Tian, Kevin
2023-05-10 17:24 ` Alex Williamson
2023-05-10 20:15   ` Jason Gunthorpe
2023-05-11  7:27   ` Tian, Kevin
2023-05-11 11:34     ` Baolu Lu
2023-05-12  2:59       ` Tian, Kevin
2023-05-12 21:01         ` Jason Gunthorpe
2023-05-17  5:09           ` Tian, Kevin
2023-05-11 15:45     ` Alex Williamson
2023-05-12  2:52       ` Tian, Kevin
2023-05-17  5:22       ` Tian, Kevin
2023-07-27  1:17       ` Tian, Kevin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox