Continuous reboots will fail to boot into OS

Hi nvidia teams

After flashing JP5.1.1, the system boots into the OS without issues.
However, if the reboot command is executed four or more times in quick succession,
the system fails to find /dev/mmcblk0p1 during boot, and it can’t loading to the OS.
Could you please provide some suggestions?
The complete Debug UART log is attached for reference.

[    9.700649] ALSA device list:
[    9.700746]   No soundcards found.
[    9.701471] Freeing unused kernel memory: 3968K
[    9.701653] Run /init as init process
[    9.713311] Root device found: initrd
[    9.713759] Mount initrd as rootfs and enter recovery mode
Finding OTA work dir on external storage devices

Checking whether device /dev/mmcblk?p1 exist

Looking for OTA work directory on the device(s): /dev/mmcblk0p1

Checking whether device /dev/sd?1 exist

Device /dev/sd?1 does not exist

Checking whether device /dev/nvme?n1p1 exist

Device /dev/nvme?n1p1 does not exist

Finding OTA work dir on internal storage device

[    9.748753] EXT4-fs (mmcblk0p1): mounted filesystem with ordered data mode. Opts: (null)
OTA work directory /mnt/ota_work is not found on /dev/mmcblk0p1

OTA work directory is not found on internal and external storage devices

bash: cannot set terminal process group (-1): Inappropriate ioctl for device

bash: no job control in this shell

bash-5.0# 

putty.log (600.3 KB)

Could you go back to direct boot first and check if “nv-l4t-bootloader-config.service” is working fine on your board?

Your board stuck in recovery boot image now which could be due to missing nv-l4t-bootloader-config.service.

Hi WayneWWW

If the system fails to load the OS, I have to reflash the AGX Orin. After reflashing, the AGX Orin boots into the OS successfully.
The nv-l4t-bootloader-config.service is working as shown in the message below.

nvidia@tegra-ubuntu:~$ systemctl status nv-l4t-bootloader-config.service
● nv-l4t-bootloader-config.service - Configure bootloader service
     Loaded: loaded (/etc/systemd/system/nv-l4t-bootloader-config.service; enabled; vendor preset: enabled)
     Active: inactive (dead) since Mon 2024-06-03 01:53:43 UTC; 26min ago
    Process: 2773 ExecStart=/opt/nvidia/l4t-bootloader-config/nv-l4t-bootloader-config.sh -v (code=exited, status=0/SUCCE>
   Main PID: 2773 (code=exited, status=0/SUCCESS)

Jun 03 01:53:42 tegra-ubuntu nv-l4t-bootloader-config.sh[3070]: TEGRA_EMMC_ONLY false
Jun 03 01:53:42 tegra-ubuntu nv-l4t-bootloader-config.sh[3070]: TEGRA_CHIPID 0x23
Jun 03 01:53:42 tegra-ubuntu nv-l4t-bootloader-config.sh[3070]: TEGRA_OTA_BOOT_DEVICE /dev/mtdblock0
Jun 03 01:53:42 tegra-ubuntu nv-l4t-bootloader-config.sh[3070]: TEGRA_OTA_GPT_DEVICE /dev/mtdblock0
Jun 03 01:53:42 tegra-ubuntu nv-l4t-bootloader-config.sh[2773]: Info: Write TegraPlatformCompatSpec with 3701--0005--1--n>
Jun 03 01:53:42 tegra-ubuntu nv-l4t-bootloader-config.sh[2773]: Info. Uninstalling mtdblock.
Jun 03 01:53:42 tegra-ubuntu nv-l4t-bootloader-config.sh[2773]: Info. Verifying boot status.
Jun 03 01:53:42 tegra-ubuntu nv-l4t-bootloader-config.sh[3076]: Info: variable BootChainFwStatus is not found.
Jun 03 01:53:43 tegra-ubuntu systemd[1]: nv-l4t-bootloader-config.service: Succeeded.
Jun 03 01:53:43 tegra-ubuntu systemd[1]: Finished Configure bootloader service.
...skipping...
● nv-l4t-bootloader-config.service - Configure bootloader service
     Loaded: loaded (/etc/systemd/system/nv-l4t-bootloader-config.service; enabled; vendor preset: enabled)
     Active: inactive (dead) since Mon 2024-06-03 01:53:43 UTC; 26min ago
    Process: 2773 ExecStart=/opt/nvidia/l4t-bootloader-config/nv-l4t-bootloader-config.sh -v (code=exited, status=0/SUCCE>
   Main PID: 2773 (code=exited, status=0/SUCCESS)

Jun 03 01:53:42 tegra-ubuntu nv-l4t-bootloader-config.sh[3070]: TEGRA_EMMC_ONLY false
Jun 03 01:53:42 tegra-ubuntu nv-l4t-bootloader-config.sh[3070]: TEGRA_CHIPID 0x23
Jun 03 01:53:42 tegra-ubuntu nv-l4t-bootloader-config.sh[3070]: TEGRA_OTA_BOOT_DEVICE /dev/mtdblock0
Jun 03 01:53:42 tegra-ubuntu nv-l4t-bootloader-config.sh[3070]: TEGRA_OTA_GPT_DEVICE /dev/mtdblock0
Jun 03 01:53:42 tegra-ubuntu nv-l4t-bootloader-config.sh[2773]: Info: Write TegraPlatformCompatSpec with 3701--0005--1--n>
Jun 03 01:53:42 tegra-ubuntu nv-l4t-bootloader-config.sh[2773]: Info. Uninstalling mtdblock.
Jun 03 01:53:42 tegra-ubuntu nv-l4t-bootloader-config.sh[2773]: Info. Verifying boot status.
Jun 03 01:53:42 tegra-ubuntu nv-l4t-bootloader-config.sh[3076]: Info: variable BootChainFwStatus is not found.
Jun 03 01:53:43 tegra-ubuntu systemd[1]: nv-l4t-bootloader-config.service: Succeeded.
Jun 03 01:53:43 tegra-ubuntu systemd[1]: Finished Configure bootloader service.

Hi @pohsuan.hsu

Could you monitor the status of this service and do your 4th reboot test again?

btw, you can switch from recovery boot to normal boot by using this method. No need to reflash.

Hi WanyeWWW

I tried monitoring the nv-l4t-bootloader-config service through 5 reboots.
I found that after booting into the OS, it takes about one minute for the nv-l4t-bootloader-config.service to complete.

Logs are attached.
putty.log (639.7 KB)

So will you still reproduce this issue if you always wait for nv-l4t-bootloader-config.service to complete.?

No, If I wait more than 1 minute, this issue does not occur.

Then I think this issue is your reboot frequency is faster than the service.

However, I don’t think this service needs to take one min to finish.

Yes, I reboot the system into OS immediately.
Is there any method to reduce the time it takes for the nv-l4t-bootloader-config.service to finish?

Could you upgrade the BSP version? I really don’t think latest BSP would need 1 min to finish this service…

Because our product is release by JP5.1.1…
Do you have any other solutions could suggest me?
Thank you

Hi WanyeWWW

I would like to ask for advice on how to revert to direct boot.
When is the correct timing to press ESC?
Where should I press ESC? Should I do it in the debug UART console?

Do it in UART console when you see the log enters UEFI.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.