R36.3 Kernel Customization error

Hello,

I’m trying to customize jetson kernel for the purpose of boot time optimization. after running modules_install, when I tried to run sudo ./tools/l4t_update_initrd.sh

it gave the following response:

Using rootfs directory: /home/ubuntu/jetlin363/Linux_for_Tegra/rootfs
Updating the initrd: /home/ubuntu/jetlin363/Linux_for_Tegra/bootloader/l4t_initrd.img
Copy /home/ubuntu/jetlin363/Linux_for_Tegra/bootloader/l4t_initrd.img to /home/ubuntu/jetlin363/Linux_for_Tegra/rootfs/boot/initrd
Preparing virtual env
chroot: failed to run command 'nv-update-initrd': No such file or directory
ERROR: nv-update-initrd failed!
Cleaning up virtual env
umount: /home/ubuntu/jetlin363/Linux_for_Tegra/rootfs/dev: target is busy.

I cannot locate the nv-update-initrd file in Linux_for_Tegra folder, to setup the build environment, I followed the steps from Quick Start and Kernel Customization chapters of the online guide.

I did face some issues before while running modules_install,

first was due to not running the compile and install commands in the order given the Kernel Customization chapter (after compiling the kernel via make -C kernel, I compiled the external modules first via make modules, then tried to directly install external modules using sudo -E make modules install before install the kernel and in-tree modules).

Next issue that I faced was in signing of external modules, specifically - SSL error:FFFFFFFF80000002:system library::No such file or directory: ... , which I solved as given in this thread . Afterwards, the output showed installation and signing of modules within nvidia–ot, hwpm, nvdisplay and nvgpu folders, and the command ended without giving errors so I assume it went okay.

Now, I’m facing the issue stated at the beginning.

Hi,
It should be in rootfs:

Linux_for_Tegra$ sudo find -name nv-update-initrd
./rootfs/var/lib/dpkg/triggers/nv-update-initrd
./rootfs/usr/sbin/nv-update-initrd
./rootfs/etc/nv-update-initrd

Probably you remove the files while customizing rootfs, or certain path is not set correctly.

Thank you for the reply,

I did not find it in rootfs, sudo find -name nv-update-initrd resulted in showing nothing.

Then I downloaded the Sample Root FS again from Jetson Linux, and ran sudo tar xpf ${SAMPLE_FS_PACKAGE} -C Linux_for_Tegra/rootfs/ , still nv-update-initrd is nowhere to be found. Am I downloading the correct files?

Hi,
Please check if you execute all steps in

Quick Start — NVIDIA Jetson Linux Developer Guide 1 documentation

Thank you, I can locate the files after running sudo ./apply_binaries.sh in a fresh project. Does the sudo -E make install -C kernel or sudo -E make modules_install affect the complete rootfs directory? Also do I need to run apply_binaries.sh only once at the start or run after modifying kernel image as well?

Hi,
Please follow the quick start section to make sure you can flash the developer kit. This is to confirm the files under Linux_for_Tegra is complete. And then do kernel customization.

Ok,

Thank you.

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