It is the size you set during flashing upon first boot, but it gets automatically enlarged with a system service.
See if commenting out this section in Linux_for_Tegra/rootfs/etc/systemd/nv-late-init.sh works:
nvresizefs_script="/usr/lib/nvidia/resizefs/nvresizefs.sh"
if [ -e "${nvresizefs_script}" ]; then
check_result="$("${nvresizefs_script}" -c)"
if [[ "${check_result}" = "true" ]]; then
"${nvresizefs_script}"
fi
fi
Can you please try again with 35.5 in case you are still using 35.4.1?
I just checked, and there are a couple of fixes since 35.4.1 regarding scripts handling the resize function.
I tested on Orin Nano + 35.5 with NVMe, and I did see the screen of setting APP partition size.
I’ve been doing the latest runs with 35.5.0. No luck with that.
I skimmed through the code, and it seems like the resize gets called in post-init by the oem-configure. Since to APP_SIZE isn’t defined at that stage of setup, there isn’t any value and the default behavior of the resizefs script is just to increase to take up the entire drive. I don’t like this behavior, but I understand that during flashing you don’t have a way to measure the available space in the drive, right?
I will try your code patch. I think also just deleting the resizefs script should do the trick.
@DaveYYY none of the above worked either. I noticed there is also this at the end of Linux_for_Tegra/tools/kernel_flash/l4t_flash_from_kernel.sh which gets called at end of flash_initrd
I’ll try disabling that code as well…
elif [ $((start_offset + part_size)) -lt "${device_size}" ]; then
print_at_end "The device size indicated in the partition \
layout xml is smaller than the actual size. This utility will try to fix the GPT."
set +e
echo -e "Fix\nFix" | parted ---pretend-input-tty "${disk}" print
if [ "${shouldExpandLastPart}" = "1" ]; then
print_log "Expanding last partition to fill the storage device"
# The size of extened rootfs partition must be 4KiB aligned
max_size="$(((device_size - part_size - expandedPartStart) / 4096 * 4096))"
if [ "${max_size}" -gt 0 ]; then
expandedPartEnd="$((expandedPartStart + max_size - 1))"
parted -s "${disk}" "unit B resizepart ${expandedPartId} ${expandedPartEnd}"
fi
fi
set -e
I deleted the nvresizefs.sh file entirely, also commented the code you shared in nv-late-init.sh. None seemed to help.
I got my partition after commenting out the code I just shared in l4t_flash_from_kernel.sh
So the resizing has been happening during the flashing step, not during the oem-configuration process
Yes! This is resolved for now. Will have to figure out later if this also works for future releases in >= Jetpack 6. As this modifications are not necessarilly portable and probably bound to change… It would be good to just have access to this through the oem-config menu that you shared.