From: Harald Hoyer Date: Tue, 17 Jul 2012 11:05:11 +0000 (+0200) Subject: Revert "systemd/dracut-pre-pivot.service: force clean stop of udevd and cleanup-db" X-Git-Tag: 021~10 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=765d8408e9aafa45cd89a039f8b41f85191fd91f;p=thirdparty%2Fdracut.git Revert "systemd/dracut-pre-pivot.service: force clean stop of udevd and cleanup-db" This reverts commit a43f97c4e35d0d9c7e6e315e11c909e86936e1cc. --- diff --git a/modules.d/98systemd/dracut-pre-pivot.service b/modules.d/98systemd/dracut-pre-pivot.service index 317b4769c..61257cf0c 100644 --- a/modules.d/98systemd/dracut-pre-pivot.service +++ b/modules.d/98systemd/dracut-pre-pivot.service @@ -16,7 +16,7 @@ ConditionPathExists=/etc/initrd-release [Service] Type=oneshot ExecStart=-/bin/dracut-pre-pivot -ExecStopPost=-/usr/bin/systemctl --no-block isolate initrd-switch-root.target +ExecStopPost=-/usr/bin/systemctl isolate initrd-switch-root.target StandardInput=null StandardOutput=syslog StandardError=syslog+console diff --git a/modules.d/98systemd/dracut-pre-pivot.sh b/modules.d/98systemd/dracut-pre-pivot.sh index 44afe5482..31dded505 100755 --- a/modules.d/98systemd/dracut-pre-pivot.sh +++ b/modules.d/98systemd/dracut-pre-pivot.sh @@ -39,7 +39,4 @@ echo "NEWROOT=\"$NEWROOT\"" >> /run/initramfs/switch-root.conf getarg rd.break rdbreak && emergency_shell -n switch_root "Break before switch_root" -/usr/bin/udevadm control --exit || warn "/usr/bin/udevadm control --exit failed" -/usr/bin/udevadm info --cleanup-db || warn "/usr/bin/udevadm info --cleanup-db failed" - exit 0 diff --git a/modules.d/98systemd/module-setup.sh b/modules.d/98systemd/module-setup.sh index 05faf8745..5cb236c46 100755 --- a/modules.d/98systemd/module-setup.sh +++ b/modules.d/98systemd/module-setup.sh @@ -143,6 +143,10 @@ install() { inst_simple "$moddir/dracut-pre-pivot.service" ${dracutsystemunitdir}/dracut-pre-pivot.service ln -fs ../dracut-pre-pivot.service "${initdir}${dracutsystemunitdir}/basic.target.wants/dracut-pre-pivot.service" + inst_simple "$moddir/udevadm-cleanup-db.service" ${dracutsystemunitdir}/udevadm-cleanup-db.service + mkdir -p "${initdir}${dracutsystemunitdir}/initrd-switch-root.target.requires" + ln -fs ../udevadm-cleanup-db.service "${initdir}${dracutsystemunitdir}/initrd-switch-root.target.requires/udevadm-cleanup-db.service" + inst_script "$moddir/service-to-run.sh" "${systemdutildir}/system-generators/service-to-run" } diff --git a/modules.d/98systemd/udevadm-cleanup-db.service b/modules.d/98systemd/udevadm-cleanup-db.service new file mode 100644 index 000000000..368a0dd4d --- /dev/null +++ b/modules.d/98systemd/udevadm-cleanup-db.service @@ -0,0 +1,20 @@ +# This file is part of systemd. +# +# systemd is free software; you can redistribute it and/or modify it +# under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation; either version 2.1 of the License, or +# (at your option) any later version. + +[Unit] +Description=Cleanup udevd DB +DefaultDependencies=no +ConditionPathExists=/etc/initrd-release +Conflicts=systemd-udevd.service systemd-udevd-control.socket systemd-udevd-kernel.socket +Before=initrd-switch-root.service + +[Service] +Type=oneshot +ExecStart=-/usr/bin/udevadm info --cleanup-db +StandardInput=null +StandardOutput=null +StandardError=null