]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core.git/commitdiff
initramfs-framework: overlayroot: switch_root instead of chroot
authorMarcus Flyckt <marcus.flyckt@kvaser.com>
Tue, 19 May 2026 11:19:47 +0000 (13:19 +0200)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 21 May 2026 10:18:21 +0000 (11:18 +0100)
Use a proper switch_root instead of a plain chroot when transitioning to
the overlay root filesystem.

Some Linux features, like unshare(2), check for chrooted
environments and may return EPERM when running inside one.

This is particularly an issue when running unprivileged containers.

Signed-off-by: Marcus Flyckt <marcus.flyckt@kvaser.com>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-core/initrdscripts/initramfs-framework/overlayroot

index dacbcbe213aacef9aed9279b1c29eeb2d1cf6e42..3f0a1c54935729e53c65a3e9eecc3afd58d4cbcf 100644 (file)
@@ -114,4 +114,4 @@ mount -n --move /proc ${NEWROOT}/proc
 mount -n --move /sys ${NEWROOT}/sys
 mount -n --move /dev ${NEWROOT}/dev
 
-exec chroot ${NEWROOT}/ ${bootparam_init:-/sbin/init} || exit_gracefully "Couldn't chroot into overlay"
+exec switch_root ${NEWROOT}/ ${bootparam_init:-/sbin/init} || exit_gracefully "Couldn't switch_root into overlay"