From: Ross Burton Date: Tue, 10 Oct 2023 12:54:57 +0000 (+0100) Subject: busybox-inittab: fix console handling X-Git-Tag: yocto-5.2~4903 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=7120278;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git busybox-inittab: fix console handling A testing failure meant that the inittab changes made in 6c65544 didn't actually work. A copy-paste problems meant that start_getty was being invoked instead of getty, but start_getty is sysvinit-inittab-specific. Revert this inittab to calling getty directly. Remove the terminal type, this wasn't specified in the original inittab. Busybox's init has non-standard behaviour for the inittab's ID field. With SysV this is a four-character identifier and nothing more, but with busybox init this is the controlling terminal (minus /dev). If the terminal doesn't exist then busybox doesn't gracefully handle the failure but instead repeatedly fails to spawn. As getty will immediately issue a setsid() this isn't needed for getty entries, so the ID can be empty and ttyrun does the terminal detection. Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- diff --git a/meta/recipes-core/busybox/busybox-inittab_1.36.1.bb b/meta/recipes-core/busybox/busybox-inittab_1.36.1.bb index 462c9bb9c5f..8ee88b6aeff 100644 --- a/meta/recipes-core/busybox/busybox-inittab_1.36.1.bb +++ b/meta/recipes-core/busybox/busybox-inittab_1.36.1.bb @@ -23,7 +23,7 @@ do_install() { device=$(echo $s | cut -d\; -f 2) label=$(echo $device | sed -e 's/tty//' | tail --bytes=5) - echo "$label::respawn:${sbindir}/ttyrun $device ${base_bindir}/start_getty $speed $device vt102" >> ${D}${sysconfdir}/inittab + echo "::respawn:${sbindir}/ttyrun $device ${base_sbindir}/getty $speed $device" >> ${D}${sysconfdir}/inittab done if [ "${USE_VT}" = "1" ]; then