mirror of
https://git.yoctoproject.org/poky
synced 2026-03-19 13:49:41 +01:00
systemd: Set RebootWatchdogSec to 60s as watchdog
The systemd-shutdown sets watchdog timeout to 10m (600 seconds) which is too large, and caused errors when reboot on boars such as rpi4: systemd-shutdown[1]: Failed to set timeout to 10min: Invalid argument The watchog's default value is 60s, so set RebootWatchdogSec to 60s to fix the errors. And <machin.conf> can set WATCHDOG_TIMEOUT when needed, for example, the max timeout of rpi4 is 15 seconds. (From OE-Core rev: 20a7ab9ff6ed777c6617a338d049ebe03fcc588c) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
add49bc7e0
commit
00400b6357
@@ -238,6 +238,9 @@ EXTRA_OEMESON += "-Dkexec-path=${sbindir}/kexec \
|
||||
-Dnologin-path=${base_sbindir}/nologin \
|
||||
-Dumount-path=${base_bindir}/umount"
|
||||
|
||||
# The 60 seconds is watchdog's default vaule.
|
||||
WATCHDOG_TIMEOUT ??= "60"
|
||||
|
||||
do_install() {
|
||||
meson_do_install
|
||||
install -d ${D}/${base_sbindir}
|
||||
@@ -337,6 +340,11 @@ do_install() {
|
||||
|
||||
# add a profile fragment to disable systemd pager with busybox less
|
||||
install -Dm 0644 ${WORKDIR}/systemd-pager.sh ${D}${sysconfdir}/profile.d/systemd-pager.sh
|
||||
|
||||
if [ -n "${WATCHDOG_TIMEOUT}" ]; then
|
||||
sed -i -e 's/#RebootWatchdogSec=10min/RebootWatchdogSec=${WATCHDOG_TIMEOUT}/' \
|
||||
${D}/${sysconfdir}/systemd/system.conf
|
||||
fi
|
||||
}
|
||||
|
||||
python populate_packages:prepend (){
|
||||
|
||||
@@ -13,8 +13,15 @@ SRC_URI = " \
|
||||
file://watchdog.conf \
|
||||
"
|
||||
|
||||
# The default value is 60 seconds when null.
|
||||
WATCHDOG_TIMEOUT ??= ""
|
||||
|
||||
do_install() {
|
||||
install -Dm 0644 ${WORKDIR}/watchdog.default ${D}${sysconfdir}/default/watchdog
|
||||
install -Dm 0644 ${WORKDIR}/watchdog.conf ${D}${sysconfdir}/watchdog.conf
|
||||
|
||||
if [ -n "${WATCHDOG_TIMEOUT}" ]; then
|
||||
echo "watchdog-timeout = ${WATCHDOG_TIMEOUT}" >> ${D}/etc/watchdog.conf
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user