diff options
author | Ross Burton <ross.burton@intel.com> | 2019-10-07 20:39:07 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-10-08 11:22:24 +0100 |
commit | 3fd81b0db24776432d35e1bfb84a68bdfec5e0d2 (patch) | |
tree | 7df0d642f933374ea1c6ed9bffba35b0e1d3d955 /meta/recipes-core | |
parent | 9553dae95832201c09c3dda313a4da60a128b91b (diff) | |
download | poky-3fd81b0db24776432d35e1bfb84a68bdfec5e0d2.tar.gz |
systemd: don't install systemd-hwdb-update.service
This service file is designed to do first-boot initialisation of the udev hwdb
database, but the condition logic to fire it is suboptimal: it can fire if not
needed, and can also not fire if needed. Specifically it will always fire on
first boot, even though as part of rootfs generation we build the hwdb database.
On slow machines this can take a significant amount of time, the pathological
case being qemumips where the service can time out after 90 seconds of
processing.
Other distributions have also noticed this problem (specifically, at least
Debian and Clear) and solve it by using traditional postinst scripts to generate
the hwdb (which we already do) and deleting the service file (which we don't).
Finish the fix and improve boot times across all boards by deleting the service
file.
[ YOCTO #13504 ]
(From OE-Core rev: b1fffd407029d5936e01ba6988b9e82279d98285)
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core')
-rw-r--r-- | meta/recipes-core/systemd/systemd_243.bb | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/meta/recipes-core/systemd/systemd_243.bb b/meta/recipes-core/systemd/systemd_243.bb index e874a451c4..6e7f95693b 100644 --- a/meta/recipes-core/systemd/systemd_243.bb +++ b/meta/recipes-core/systemd/systemd_243.bb | |||
@@ -295,13 +295,10 @@ do_install() { | |||
295 | # install default policy for presets | 295 | # install default policy for presets |
296 | # https://www.freedesktop.org/wiki/Software/systemd/Preset/#howto | 296 | # https://www.freedesktop.org/wiki/Software/systemd/Preset/#howto |
297 | install -Dm 0644 ${WORKDIR}/99-default.preset ${D}${systemd_unitdir}/system-preset/99-default.preset | 297 | install -Dm 0644 ${WORKDIR}/99-default.preset ${D}${systemd_unitdir}/system-preset/99-default.preset |
298 | } | ||
299 | 298 | ||
300 | do_install_append () { | 299 | # We use package postinsts for the hwdb update, as the update service is |
301 | # Mips qemu is extremely slow, allow more time for the hwdb update | 300 | # easily triggered for no reason and will slow down boots. |
302 | # This is a workaround until https://github.com/systemd/systemd/issues/13581 is resolved | 301 | find ${D} -name systemd-hwdb-update.service -delete |
303 | [ ! -e ${D}${systemd_unitdir}/system/systemd-hwdb-update.service ] || | ||
304 | sed -i -e s#TimeoutSec=90s#TimeoutSec=180s# ${D}${systemd_unitdir}/system/systemd-hwdb-update.service | ||
305 | } | 302 | } |
306 | 303 | ||
307 | python populate_packages_prepend (){ | 304 | python populate_packages_prepend (){ |