Mass flash fails with "exportfs: duplicated export entries"

Hi,
I am getting an error when using the --massflash option with initrd flash on BSP 32.7.1 to flash a Xavier with NVMe. The flash host is Ubuntu 22.04.3 LTS.

The process works for one board at a time but fails when two or more are connected. These are the steps to reproduce:

Prepare massflash
# ROOTFS_AB=1 ./tools/kernel_flash/l4t_initrd_flash.sh --no-flash --network usb0 --massflash 5 --external-device nvme0n1 -c flash_l4t_nvme_rootfs_ab2samsung232Gcustom.xml -S 32GiB --showlogs jetson-xavier-nx-devkit-emmc external

Attach two devices in recovery mode

**# lsusb**
....
Bus 001 Device 020: ID 0955:7e19 NVIDIA Corp. APX
Bus 001 Device 022: ID 0955:7e19 NVIDIA Corp. APX

Run massflash

**# ROOTFS_AB=1 ./tools/kernel_flash/l4t_initrd_flash.sh --flash-only --network usb0 --massflash 5 --external-device nvme0n1 -c flash_l4t_nvme_rootfs_ab2samsung232Gcustom.xml -S 32GiB --showlogs jetson-xavier-nx-devkit-emmc external**
/tmp/tmpcassette/tools/kernel_flash/l4t_initrd_flash_internal.sh --network usb0 --usb-instance 1-2.1 --device-instance 0 --flash-only --external-device nvme0n1 -c "flash_l4t_nvme_rootfs_ab2samsung232Gcustom.xml" -S 32GiB jetson-xavier-nx-devkit-emmc external
Start flashing device: 1-2.1, rcm instance: 0, PID: 128643
Log will be saved to Linux_for_Tegra/initrdlog/flash_1-2.1_0_20231005-112952.log
/tmp/tmpcassette/tools/kernel_flash/l4t_initrd_flash_internal.sh --network usb0 --usb-instance 1-2.2 --device-instance 1 --flash-only --external-device nvme0n1 -c "flash_l4t_nvme_rootfs_ab2samsung232Gcustom.xml" -S 32GiB jetson-xavier-nx-devkit-emmc external
Start flashing device: 1-2.2, rcm instance: 1, PID: 128646
Log will be saved to Linux_for_Tegra/initrdlog/flash_1-2.2_1_20231005-112952.log
**Flash complete (WITH FAILURES)**

Log output

**# tail -F initrdlog/*.log**
==> initrdlog/flash_1-2.1_0_20231005-112952.log <==
==> initrdlog/flash_1-2.2_1_20231005-112952.log <==
exportfs: duplicated export entries:
exportfs: fc00:1:1::/48:/tmp/tmpcassette/rootfs
exportfs: fc00:1:1::/48:/tmp/tmpcassette/rootfs
==> initrdlog/flash_1-2.1_0_20231005-112952.log <==
exportfs: duplicated export entries:
exportfs: fc00:1:1::/48:/tmp/tmpcassette/rootfs
exportfs: fc00:1:1::/48:/tmp/tmpcassette/rootfs
==> initrdlog/flash_1-2.2_1_20231005-112952.log <==
Cleaning up...
==> initrdlog/flash_1-2.1_0_20231005-112952.log <==
Cleaning up...

It seems to double write to /etc/exports but I can’t fix it.
How do I get past that to flash several Xaviers at one time?
Thanks,
Mickey

Hi mickey.mcgown,

Are you using the devkit or custom board?

For Jetpack 4.x (L4T R32.X), please use Ubuntu16.04/18.04.
For Jetpack 5.x (L4T R35.X), please use Ubuntu 18.04/20.04.

Ubuntu 22.04 has not been verified with JP5.
As my understanding, Ubuntu 22.04 is not supporting the JP4.
Please get another ubuntu host to verify.

This is using a dev carrier board. I was able to get it to work using the workaround found here:
https://forums.developer.nvidia.com/t/flash-orin-32g-fail/229129/15
Comment out these lines in tools/kernel_flash/l4t_network_flash.func
# if ! grep -qvE "^\s*#|^\s*$" /etc/exports; then
# echo "# Entry added by NVIDIA initrd flash tool" >> /etc/exports
# echo "${nfs_dir} ${target_ip}(${PERMISSION_STR})" >> /etc/exports

# fi

I was able to flash two devices at once after that on Ubuntu 22 and Debian 11.

1 Like

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