redhat/configs: set filesystems and some drivers to built in to help with automotive boot speed
Upstream Status: RHEL Only JIRA: https://issues.redhat.com/browse/RHEL-23469
To help with the overall boot speed, change the drivers for the filesytems, along with the drivers that are needed to get the root filesystem mounted, from modules to built in.
Testing results the automotive sample-images using
make cs9-qemu-developer-regular.x86_64.qcow2
:
Before results running 5.14.0-410.363.el9iv.x86_64 where virtio_blk + friends are built as modules.
Startup finished in 262ms (kernel) + 1.158s (initrd)
Startup finished in 253ms (kernel) + 986ms (initrd)
Startup finished in 270ms (kernel) + 1.041s (initrd)
The relevant log messages showing the virtio_blk is initialized later in the boot process inside the initrd:
[ 0.265061] Run /init as init process
...
[ 0.749703] virtio_blk virtio1: 8/0/0 default/read/poll queues
[ 0.753037] virtio_blk virtio1: [vda] 16777216 512-byte logical blocks (8.59 GB/8.00 GiB)
[ 0.758552] vda: vda1 vda2 vda3
Results testing testing with this merge request with no initrd:
Startup finished in 332ms (kernel)
Startup finished in 354ms (kernel)
Startup finished in 338ms (kernel)
The relevant log messages showing the virtio_blk is initialized earlier in the boot process and has more time to settle:
[ 0.202561] virtio_blk virtio1: 8/0/0 default/read/poll queues
[ 0.204832] virtio_blk virtio1: [vda] 16777216 512-byte logical blocks (8.59 GB/8.00 GiB)
[ 0.207574] vda: vda1 vda2 vda3
...
[ 0.270301] Run /sbin/init as init process
Comparing the size increase of vmlinuz from the kernel-core package shows the following size increase:
before | w/ fs mods | w/ fs+drivers | drivers increase | |
---|---|---|---|---|
gzip kernel | 10.66 MB | 11.34 MB | 11.62 MB | 0.28 MB |
uncompressed | 33.38 MB | 35.14 MB | 36.33 MB | 1.19 MB |
We will have a corresponding decrease in the kernel modules packages. Note that this change includes the 5 filesystems, plus some common filesystem code, that will be be used on all platforms.
This change has also been boot tested on a RideSX4 without an initrd, and we see a similar increase in overall boot time.
Signed-off-by: Brian Masney bmasney@redhat.com