Load kernel module later

This commit is contained in:
Jip-Hop 2024-01-27 05:44:05 +01:00
parent 5021a060e5
commit 2aba2c4a9d
1 changed files with 14 additions and 14 deletions

View File

@ -104,6 +104,16 @@ def passthrough_intel(gpu_passthrough_intel, systemd_nspawn_additional_args):
def passthrough_nvidia( def passthrough_nvidia(
gpu_passthrough_nvidia, systemd_nspawn_additional_args, jail_name gpu_passthrough_nvidia, systemd_nspawn_additional_args, jail_name
): ):
jail_rootfs_path = get_jail_rootfs_path(jail_name)
ld_so_conf_path = Path(
os.path.join(jail_rootfs_path), f"etc/ld.so.conf.d/{SYMLINK_NAME}-nvidia.conf"
)
if gpu_passthrough_nvidia != "1":
# Cleanup the config file we made when passthrough was enabled
ld_so_conf_path.unlink(missing_ok=True)
return
# Load the nvidia kernel module # Load the nvidia kernel module
if subprocess.run(["modprobe", "nvidia-current-uvm"]).returncode != 0: if subprocess.run(["modprobe", "nvidia-current-uvm"]).returncode != 0:
eprint( eprint(
@ -115,20 +125,10 @@ def passthrough_nvidia(
) )
return return
jail_rootfs_path = get_jail_rootfs_path(jail_name) # Run nvidia-smi to initialize the nvidia driver
ld_so_conf_path = Path( # If we can't run nvidia-smi successfully,
os.path.join(jail_rootfs_path), f"etc/ld.so.conf.d/{SYMLINK_NAME}-nvidia.conf" # then nvidia-container-cli list will fail too:
) # we shouldn't continue with gpu passthrough
if gpu_passthrough_nvidia != "1":
# Cleanup the config file we made when passthrough was enabled
ld_so_conf_path.unlink(missing_ok=True)
return
# Run nvidia-smi to initialize the nvidia driver
# If we can't run nvidia-smi successfully,
# then nvidia-container-cli list will fail too:
# we shouldn't continue with gpu passthrough
if subprocess.run(["nvidia-smi", "-f", "/dev/null"]).returncode != 0: if subprocess.run(["nvidia-smi", "-f", "/dev/null"]).returncode != 0:
eprint("Skip passthrough of nvidia GPU.") eprint("Skip passthrough of nvidia GPU.")
return return