Message ID | 9fd908d3afa5e01bb315fbba22a8ab490564923f.1660208982.git.bertrand.marquis@arm.com |
---|---|
State | Accepted, archived |
Commit | 5a704d0ff4d95b6d3a67b80a0db2be66253e7d61 |
Headers | show |
Series | sysvinit-inittab/start_getty: Fix respawn too fast | expand |
diff --git a/meta/recipes-core/sysvinit/sysvinit-inittab/start_getty b/meta/recipes-core/sysvinit/sysvinit-inittab/start_getty index 699a1ead1a40..2bfe4310acad 100644 --- a/meta/recipes-core/sysvinit/sysvinit-inittab/start_getty +++ b/meta/recipes-core/sysvinit/sysvinit-inittab/start_getty @@ -13,5 +13,8 @@ case $(readlink -f "${getty}") in esac if [ -e /sys/class/tty/$2 -a -c /dev/$2 ]; then - ${setsid:-} ${getty} -L $1 $2 $3 + ${setsid:-} ${getty} -L $1 $2 $3 +else + # Prevent respawning to fast error if /dev entry does not exist + sleep 1000 fi
When an entry in /dev does not exist, start_getty is returning directly. As it is started from init in a respawn mode, it will loop infinitely. In this case add a sleep inside start_getty to prevent the "Respawning too fast" message popping up every 5 minutes. This case is happening quite often when the system is started as an hypervisor guest as the standard serial line is usually taken by it and removed from the configuration. This was triggered quite often running linux as dom0 on top of Xen on arm as the serial line is taken by Xen and removed from the device tree. Use the opportunity to replace one tab with spaces as the rest of the file is using spaces. Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com> --- meta/recipes-core/sysvinit/sysvinit-inittab/start_getty | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)