From 31361f1dea60453616c0818a0139d38ec291ba8c Mon Sep 17 00:00:00 2001 From: Karthik Vetrivel Date: Thu, 29 Jan 2026 15:03:32 +0000 Subject: [PATCH] Add env variable to signal skip vfio-pci unbind Signed-off-by: Karthik Vetrivel --- controllers/object_controls.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/controllers/object_controls.go b/controllers/object_controls.go index ab8aeb577..6dd059dae 100644 --- a/controllers/object_controls.go +++ b/controllers/object_controls.go @@ -2105,6 +2105,13 @@ func TransformVFIOManager(obj *appsv1.DaemonSet, config *gpuv1.ClusterPolicySpec return fmt.Errorf("failed to transform k8s-driver-manager initContainer for VFIO Manager: %v", err) } + // Used to determine if GPUs are already bound to vfio-pci (avoids disrupting active VM workloads) + // Set to gpuWorkloadConfigVMPassthrough since VFIO Manager only runs on vm-passthrough nodes. + driverManagerContainer := findContainerByName(obj.Spec.Template.Spec.InitContainers, "k8s-driver-manager") + if driverManagerContainer != nil { + setContainerEnv(driverManagerContainer, "GPU_WORKLOAD_CONFIG", gpuWorkloadConfigVMPassthrough) + } + // update image image, err := gpuv1.ImagePath(&config.VFIOManager) if err != nil {