[SRU][Lunar][PATCH v2 0/1] UBUNTU: SAUCE: Add mdev_set_iommu_device() kABI.
Tarun Gupta
targupta at nvidia.com
Thu May 18 11:18:08 UTC 2023
BugLink : https://bugs.launchpad.net/bugs/1988806
SRU Justification:
[Impact]
Currently, with below commit present in 5.16 upstream kernel,
mdev_set_iommu_device() kABI is removed.
fda49d97f2c4 ("vfio: remove the unused mdev iommu hook")
This results in SRIOV based Nvidia vGPU being broken with kernels that
have the above upstream commit present.
So, with Ubuntu 22.04 HWE kernel update (i.e the 6.2.x Lunar kernel),
SRIOV based Nvidia vGPU is broken.
Earlier, during 5.19.x HWE kernel in Kinetic release, a similar patch
was accepted. Refer
https://lists.ubuntu.com/archives/kernel-team/2022-September/133142.html
But, this patch didn't get carry-forward from Kinetic to Lunar because
of upstream merge conflict and had to be revert.
[Fix]
On 6.2.x HWE kernel, we revert the above patch which removed the
support for mdev_set_iommu_device() kABI so that vGPU works fine.
Separately, to fix this in upstream kernels, vGPU is planning to adopt
vfio-pci-core framework instead of using MDEV framework.
Currently, vfio-pci-core framework works with SRIOV vGPU but lacks
libvirt
support to assign VFs using vfio-pci-core framework.
Will work with upstream libvirt community to get libvirt support for
vfio-pci-core devices. Post that, we don't need this custom mdev patch
and vGPU can work out-of-box on Ubuntu with vfio-pci-core frameowrk
[Testcase]
Run SRIOV based (Ampere+) Nvidia vGPU on 6.2.x (Lunar) kernel.
Tarun Gupta (1):
UBUNTU: SAUCE: Add mdev_set_iommu_device() kABI.
drivers/vfio/mdev/mdev_driver.c | 1 +
drivers/vfio/mdev/mdev_private.h | 1 -
drivers/vfio/vfio_iommu_type1.c | 126 ++++++++++++++++++++++++++++---
include/linux/mdev.h | 22 ++++++
4 files changed, 140 insertions(+), 10 deletions(-)
--
2.31.1
More information about the kernel-team
mailing list