Software Version
DRIVE OS 6.0.8.1
DRIVE OS 6.0.6
DRIVE OS 6.0.5
DRIVE OS 6.0.4 (rev. 1)
DRIVE OS 6.0.4 SDK
other
Target Operating System
Linux
QNX
other
Hardware Platform
DRIVE AGX Orin Developer Kit (940-63710-0010-300)
DRIVE AGX Orin Developer Kit (940-63710-0010-200)
DRIVE AGX Orin Developer Kit (940-63710-0010-100)
DRIVE AGX Orin Developer Kit (940-63710-0010-D00)
DRIVE AGX Orin Developer Kit (940-63710-0010-C00)
DRIVE AGX Orin Developer Kit (not sure its number)
other
SDK Manager Version
1.9.3.10904
other
Host Machine Version
native Ubuntu Linux 20.04 Host installed with SDK Manager
native Ubuntu Linux 20.04 Host installed with DRIVE OS Docker Containers
native Ubuntu Linux 18.04 Host installed with DRIVE OS Docker Containers
other
Summary:
Belief is that the Nvidia Linux systemd service’s dependency on modules being loaded isn’t working.
There is a device that we need to wait for – it exists when we check at runtime, but it seems it’s not there during boot.
The file is /dev/tegra_hv_pm_ctl
We are seeing an error that manifests as:
tegra-ubuntu:~$ systemctl status nv_virtual_shutdown
â—Ź nv_virtual_shutdown.service - Hypervisor initiated Shutdown Service
Loaded: loaded (/lib/systemd/system/nv_virtual_shutdown.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Tue 2024-02-20 18:47:01 UTC; 23min ago
Main PID: 1001 (code=exited, status=255/EXCEPTION)
Feb 20 18:47:01 tegra-ubuntu systemd[1]: Started Hypervisor initiated Shutdown Service.
Feb 20 18:47:01 tegra-ubuntu bash[1013]: chmod: cannot access '/dev/tegra_hv_pm_ctl': No such file or directory
Feb 20 18:47:01 tegra-ubuntu bash[1019]: hv_pm_ctl_init: Failed to open /dev/tegra_hv_pm_ctl, -2
Feb 20 18:47:01 tegra-ubuntu systemd[1]: nv_virtual_shutdown.service: Main process exited, code=exited, status=255/EXCEPTION
Feb 20 18:47:01 tegra-ubuntu systemd[1]: nv_virtual_shutdown.service: Failed with result 'exit-code'.
However, we can see that file actually does exist:
tegra-ubuntu:~$ ls -l /dev/tegra_hv_pm_ctl
crw-------. 1 root root 476, 0 Feb 20 18:47 /dev/tegra_hv_pm_ctl
Checking journalctl, we can see:
egra-ubuntu:~$ journalctl -b-1 -u nv_virtual_shutdown
-- Logs begin at Tue 2024-02-13 19:28:37 UTC, end at Tue 2024-02-20 19:21:59 UTC. --
Feb 20 18:47:01 tegra-ubuntu systemd[1]: Started Hypervisor initiated Shutdown Service.
Feb 20 18:47:01 tegra-ubuntu bash[1013]: chmod: cannot access '/dev/tegra_hv_pm_ctl': No such file or directory
Feb 20 18:47:01 tegra-ubuntu bash[1019]: hv_pm_ctl_init: Failed to open /dev/tegra_hv_pm_ctl, -2
Feb 20 18:47:01 tegra-ubuntu systemd[1]: nv_virtual_shutdown.service: Main process exited, code=exited, status=255/EXCEPTION
Feb 20 18:47:01 tegra-ubuntu systemd[1]: nv_virtual_shutdown.service: Failed with result 'exit-code'.
Request
Is there a known workaround for this problem, or a known fix?
Should there be a different dependency requirement in the .service file?
Or maybe the service should have an automatic restart on failure as well?