diff mbox series

[4/5] busybox-inittab: fix console handling

Message ID 20231010123653.166806-4-ross.burton@arm.com
State Accepted, archived
Commit 71202782a06ed1f0a17e00072b74b21195f2f5f9
Headers show
Series [1/5] oeqa/selftest: don't skip test_read_only_image on qemuarm64 | expand

Commit Message

Ross Burton Oct. 10, 2023, 12:36 p.m. UTC
From: Ross Burton <ross.burton@arm.com>

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 <ross.burton@arm.com>
---
 meta/recipes-core/busybox/busybox-inittab_1.36.1.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff mbox series

Patch

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