]> git.proxmox.com Git - pve-manager.git/commitdiff
pve7to8: add check for nvidia-vgpu-mgr
authorDominik Csapak <d.csapak@proxmox.com>
Mon, 12 Jun 2023 10:00:53 +0000 (12:00 +0200)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Mon, 12 Jun 2023 14:57:30 +0000 (16:57 +0200)
Currently the nvidia vgpu host driver (15.2) does not support kernels >
6.0 and thus will not work with bookworm based releases for now.

Fail when the service is running, and warn if it only exists, but is
disabled/stopped (in case a user installed it sometime but did not need
it and disabled it).

In any case, link to the known issues section in the upgrade guide
(which we can update to contain up-to-date information).

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
PVE/CLI/pve7to8.pm

index 105a0e7381f6198e4640551fc685c919680d5ba8..609f185089c532c5fa3d89847c7bca0479a3a94e 100644 (file)
@@ -1219,6 +1219,27 @@ sub check_apt_repos {
     }
 }
 
+sub check_nvidia_vgpu_service {
+    log_info("Checking for existance of NVIDIA vGPU Manager..");
+
+    my $state = $get_systemd_unit_state->("nvidia-vgpu-mgr.service");
+    if ($state && $state eq 'active') {
+       log_fail(
+           "Running NVIDIA vGPU Service found, possibly not compatible with newer kernel versions,"
+           ." check with their documentation and"
+           ." https://pve.proxmox.com/wiki/Upgrade_from_7_to_8#Known_upgrade_issues."
+       );
+    } elsif ($state && $state ne 'unknown') {
+       log_warn(
+           "NVIDIA vGPU Service found, possibly not compatible with newer kernel versions,"
+           ." check with their documentation and"
+           ." https://pve.proxmox.com/wiki/Upgrade_from_7_to_8#Known_upgrade_issues."
+       );
+    } else {
+       log_pass("No NVIDIA vGPU Service found.");
+    }
+}
+
 sub check_time_sync {
     my $unit_active = sub { return $get_systemd_unit_state->($_[0], 1) eq 'active' ? $_[0] : undef };
 
@@ -1341,6 +1362,7 @@ sub check_misc {
     check_lxcfs_fuse_version();
     check_node_and_guest_configurations();
     check_apt_repos();
+    check_nvidia_vgpu_service();
 }
 
 my sub colored_if {