@@ -43,44 +43,44 @@ func RunGPUSidecar(ctx context.Context, cdClient *containerd.Client, logger logg
4343
4444 // Dynamic detection and load of GPU drivers
4545 nvidiaModules := []string {"nvidia" , "nvidia-uvm" , "nvidia-modeset" }
46- if hasRDMA () {
47- nvidiaModules = append (nvidiaModules , "nvidia-peermem" )
46+ if hasRDMA () {
47+ nvidiaModules = append (nvidiaModules , "nvidia-peermem" )
48+ }
49+ for _ , mod := range nvidiaModules {
50+ logger .Info (fmt .Sprintf ("Loading %s module..." , mod ))
51+
52+ // Build modprobe arguments. Inject GSP firmware flag for the main nvidia module.
53+ modprobeArgs := []string {"/sbin/modprobe" , mod }
54+ if mod == "nvidia" {
55+ modprobeArgs = append (modprobeArgs , "NVreg_EnableGpuFirmware=1" )
4856 }
49- for _ , mod := range nvidiaModules {
50- logger .Info (fmt .Sprintf ("Loading %s module..." , mod ))
51-
52- // Build modprobe arguments. Inject GSP firmware flag for the main nvidia module.
53- modprobeArgs := []string {"/sbin/modprobe" , mod }
54- if mod == "nvidia" {
55- modprobeArgs = append (modprobeArgs , "NVreg_EnableGpuFirmware=1" )
56- }
5757
58- cmd := exec .Command ("sudo" , modprobeArgs ... )
59- out , err := cmd .CombinedOutput ()
60- if err == nil {
61- logger .Info (fmt .Sprintf ("Successfully loaded %s via modprobe" , mod ))
62- continue
63- }
58+ cmd := exec .Command ("sudo" , modprobeArgs ... )
59+ out , err := cmd .CombinedOutput ()
60+ if err == nil {
61+ logger .Info (fmt .Sprintf ("Successfully loaded %s via modprobe" , mod ))
62+ continue
63+ }
6464
65- logger .Info (fmt .Sprintf ("modprobe %s failed: %v, output: %s. Trying insmod..." , mod , err , string (out )))
66- modPath := findKernelModulePath (kernelVer , mod )
67- if modPath == "" {
68- logger .Info (fmt .Sprintf ("Kernel module %s.ko not found in expected paths, skipping" , mod ))
69- continue
70- }
71- logger .Info (fmt .Sprintf ("Loading kernel module %s from %s" , mod , modPath ))
72-
73- // Build insmod arguments. Inject GSP firmware flag for the main nvidia module.
74- insmodArgs := []string {"/sbin/insmod" , modPath }
75- if mod == "nvidia" {
76- insmodArgs = append (insmodArgs , "NVreg_EnableGpuFirmware=1" )
77- }
65+ logger .Info (fmt .Sprintf ("modprobe %s failed: %v, output: %s. Trying insmod..." , mod , err , string (out )))
66+ modPath := findKernelModulePath (kernelVer , mod )
67+ if modPath == "" {
68+ logger .Info (fmt .Sprintf ("Kernel module %s.ko not found in expected paths, skipping" , mod ))
69+ continue
70+ }
71+ logger .Info (fmt .Sprintf ("Loading kernel module %s from %s" , mod , modPath ))
72+
73+ // Build insmod arguments. Inject GSP firmware flag for the main nvidia module.
74+ insmodArgs := []string {"/sbin/insmod" , modPath }
75+ if mod == "nvidia" {
76+ insmodArgs = append (insmodArgs , "NVreg_EnableGpuFirmware=1" )
77+ }
7878
79- cmd = exec .Command ("sudo" , insmodArgs ... )
80- if out , err := cmd .CombinedOutput (); err != nil {
81- logger .Info (fmt .Sprintf ("failed to run insmod %s: %v, output: %s" , modPath , err , string (out )))
82- }
79+ cmd = exec .Command ("sudo" , insmodArgs ... )
80+ if out , err := cmd .CombinedOutput (); err != nil {
81+ logger .Info (fmt .Sprintf ("failed to run insmod %s: %v, output: %s" , modPath , err , string (out )))
8382 }
83+ }
8484
8585 // Start nvidia-persistenced daemon on the host if found
8686 persistencedCmd := findNvidiaHostBinary ("nvidia-persistenced" )
0 commit comments