Hello community, here is the log from the commit of package dracut for openSUSE:Factory checked in at 2017-08-22 11:06:57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/dracut (Old) and /work/SRC/openSUSE:Factory/.dracut.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "dracut" Tue Aug 22 11:06:57 2017 rev:112 rq:517609 version:044.1 Changes: -------- --- /work/SRC/openSUSE:Factory/dracut/dracut.changes 2017-08-06 11:24:02.798317275 +0200 +++ /work/SRC/openSUSE:Factory/.dracut.new/dracut.changes 2017-08-22 11:07:05.925752249 +0200 @@ -1,0 +2,21 @@ +Fri Aug 18 14:42:34 UTC 2017 - [email protected] + +- Ensure that targets such as halt can be reached (bsc#1048698) + * adds 0529-systemd-add-missing-.slice-unit.patch + * adds 0530-dracut-systemd-dracut-cmdline-ask-fix-dracut-kernel-.patch + * adds 0531-dracut-systemd-.service-conflict-with-shutdown-targe.patch + +- Do not add too many drivers all at once (bsc#1037344) + * adds 0532-List-drivers-rather-than-looking-for-reverse-depende.patch + +- instmods: check modules.builtin in $srcmods (bsc#1048606) + * adds 0533-instmods-check-modules.builtin-in-srcmods.patch + +- ssh-client: ensure is usable in all cases (bsc#1021846) + * adds 0534-ssh-client-Include-nss_-libraries.patch + +- Sync initramfs after creation to ensure entigrity (bsc#1049113) + * adds 0535-Sync-initramfs-after-creation.patch + + +------------------------------------------------------------------- New: ---- 0529-systemd-add-missing-.slice-unit.patch 0530-dracut-systemd-dracut-cmdline-ask-fix-dracut-kernel-.patch 0531-dracut-systemd-.service-conflict-with-shutdown-targe.patch 0532-List-drivers-rather-than-looking-for-reverse-depende.patch 0533-instmods-check-modules.builtin-in-srcmods.patch 0534-ssh-client-Include-nss_-libraries.patch 0535-Sync-initramfs-after-creation.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ dracut.spec ++++++ --- /var/tmp/diff_new_pack.4DhwuW/_old 2017-08-22 11:07:10.689081361 +0200 +++ /var/tmp/diff_new_pack.4DhwuW/_new 2017-08-22 11:07:10.693080798 +0200 @@ -210,6 +210,13 @@ Patch526: 0526-iscsiroot-call-handle_firmware-only-for-non-iface-in.patch Patch527: 0527-switch-fips-checking-to-use-the-libkcapi-based-fipsc.patch Patch528: 0528-Ensure-dracut.sh-responds-properly-to-hostonly_cmdli.patch +Patch529: 0529-systemd-add-missing-.slice-unit.patch +Patch530: 0530-dracut-systemd-dracut-cmdline-ask-fix-dracut-kernel-.patch +Patch531: 0531-dracut-systemd-.service-conflict-with-shutdown-targe.patch +Patch532: 0532-List-drivers-rather-than-looking-for-reverse-depende.patch +Patch533: 0533-instmods-check-modules.builtin-in-srcmods.patch +Patch534: 0534-ssh-client-Include-nss_-libraries.patch +Patch535: 0535-Sync-initramfs-after-creation.patch BuildRequires: asciidoc BuildRequires: bash @@ -445,6 +452,13 @@ %patch526 -p1 %patch527 -p1 %patch528 -p1 +%patch529 -p1 +%patch530 -p1 +%patch531 -p1 +%patch532 -p1 +%patch533 -p1 +%patch534 -p1 +%patch535 -p1 %build %configure\ ++++++ 0529-systemd-add-missing-.slice-unit.patch ++++++ >From 1a4ff58c7451a88206bc119d19eb88f04936569e Mon Sep 17 00:00:00 2001 From: Harald Hoyer <[email protected]> Date: Wed, 22 Jun 2016 18:11:28 +0200 Subject: [PATCH 1/3] systemd: add missing -.slice unit --- modules.d/00systemd/module-setup.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/modules.d/00systemd/module-setup.sh b/modules.d/00systemd/module-setup.sh index d3133b23..86728208 100755 --- a/modules.d/00systemd/module-setup.sh +++ b/modules.d/00systemd/module-setup.sh @@ -122,6 +122,7 @@ install() { \ $systemdsystemunitdir/slices.target \ $systemdsystemunitdir/system.slice \ + $systemdsystemunitdir/-.slice \ \ $tmpfilesdir/systemd.conf \ \ -- 2.12.3 ++++++ 0530-dracut-systemd-dracut-cmdline-ask-fix-dracut-kernel-.patch ++++++ >From e053630ec37e31f1d7a9bcc22a4c67b2aae7c8e4 Mon Sep 17 00:00:00 2001 From: Evgeny Vereshchagin <[email protected]> Date: Mon, 15 Feb 2016 08:29:40 +0000 Subject: [PATCH 2/3] dracut-systemd/dracut-cmdline-ask: fix dracut --kernel-cmdline=rd.cmdline=ask How to reproduce: host# dracut --kernel-cmdline='rd.cmdline=ask' initramfs.img host# qemu-system-x86_64 -initrd initramfs.img ... -append root=/dev/sda1 ... ... qemu-host# journalctl -b | grep dracut-cmdline-ask ... Feb 15 08:45:36 localhost systemd[1]: dracut-cmdline-ask.service: Installed new job dracut-cmdline-ask.service/start as 42 Feb 15 08:45:36 localhost systemd[1]: dracut-cmdline-ask.service: ConditionKernelCommandLine=rd.cmdline=ask failed. Feb 15 08:45:36 localhost systemd[1]: dracut-cmdline-ask.service: Starting requested but condition failed. Not starting unit. Feb 15 08:45:36 localhost systemd[1]: dracut-cmdline-ask.service: Job dracut-cmdline-ask.service/start finished, result=done ... Signed-off-by: Evgeny Vereshchagin <[email protected]> --- modules.d/98dracut-systemd/dracut-cmdline-ask.service | 3 ++- modules.d/98dracut-systemd/dracut-cmdline-ask.sh | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/modules.d/98dracut-systemd/dracut-cmdline-ask.service b/modules.d/98dracut-systemd/dracut-cmdline-ask.service index 9a34b355..8bc7d809 100644 --- a/modules.d/98dracut-systemd/dracut-cmdline-ask.service +++ b/modules.d/98dracut-systemd/dracut-cmdline-ask.service @@ -14,7 +14,8 @@ Before=dracut-cmdline.service After=systemd-journald.socket Wants=systemd-journald.socket ConditionPathExists=/usr/lib/initrd-release -ConditionKernelCommandLine=rd.cmdline=ask +ConditionKernelCommandLine=|rd.cmdline=ask +ConditionPathExistsGlob=|/etc/cmdline.d/*.conf [Service] Environment=DRACUT_SYSTEMD=1 diff --git a/modules.d/98dracut-systemd/dracut-cmdline-ask.sh b/modules.d/98dracut-systemd/dracut-cmdline-ask.sh index ab8933ad..f410f464 100755 --- a/modules.d/98dracut-systemd/dracut-cmdline-ask.sh +++ b/modules.d/98dracut-systemd/dracut-cmdline-ask.sh @@ -1,5 +1,9 @@ #!/bin/bash +type getarg >/dev/null 2>&1 || . /lib/dracut-lib.sh + +getarg "rd.cmdline=ask" || exit 0 + sleep 0.5 echo sleep 0.5 -- 2.12.3 ++++++ 0531-dracut-systemd-.service-conflict-with-shutdown-targe.patch ++++++ >From 326c5cb2c0b280f158d587f9ad77eff80a28b9dd Mon Sep 17 00:00:00 2001 From: Harald Hoyer <[email protected]> Date: Wed, 22 Jun 2016 18:12:19 +0200 Subject: [PATCH 3/3] dracut-systemd/*.service: conflict with shutdown target make reboot/poweroff/halt work also conflict with emergency.target --- modules.d/98dracut-systemd/dracut-cmdline-ask.service | 2 ++ modules.d/98dracut-systemd/dracut-cmdline.service | 2 ++ modules.d/98dracut-systemd/dracut-emergency.service | 5 +++-- modules.d/98dracut-systemd/dracut-initqueue.service | 2 ++ modules.d/98dracut-systemd/dracut-mount.service | 2 ++ modules.d/98dracut-systemd/dracut-pre-mount.service | 2 ++ modules.d/98dracut-systemd/dracut-pre-pivot.service | 3 +++ modules.d/98dracut-systemd/dracut-pre-trigger.service | 2 ++ modules.d/98dracut-systemd/dracut-pre-udev.service | 2 ++ modules.d/98dracut-systemd/emergency.service | 2 ++ 10 files changed, 22 insertions(+), 2 deletions(-) diff --git a/modules.d/98dracut-systemd/dracut-cmdline-ask.service b/modules.d/98dracut-systemd/dracut-cmdline-ask.service index 8bc7d809..1685479a 100644 --- a/modules.d/98dracut-systemd/dracut-cmdline-ask.service +++ b/modules.d/98dracut-systemd/dracut-cmdline-ask.service @@ -16,6 +16,8 @@ Wants=systemd-journald.socket ConditionPathExists=/usr/lib/initrd-release ConditionKernelCommandLine=|rd.cmdline=ask ConditionPathExistsGlob=|/etc/cmdline.d/*.conf +Conflicts=shutdown.target emergency.target +Before=shutdown.target emergency.target [Service] Environment=DRACUT_SYSTEMD=1 diff --git a/modules.d/98dracut-systemd/dracut-cmdline.service b/modules.d/98dracut-systemd/dracut-cmdline.service index 6eeb991a..c22856e2 100644 --- a/modules.d/98dracut-systemd/dracut-cmdline.service +++ b/modules.d/98dracut-systemd/dracut-cmdline.service @@ -20,6 +20,8 @@ ConditionDirectoryNotEmpty=|/lib/dracut/hooks/cmdline ConditionKernelCommandLine=|rd.break=cmdline ConditionKernelCommandLine=|resume ConditionKernelCommandLine=|noresume +Conflicts=shutdown.target emergency.target +Before=shutdown.target emergency.target [Service] Environment=DRACUT_SYSTEMD=1 diff --git a/modules.d/98dracut-systemd/dracut-emergency.service b/modules.d/98dracut-systemd/dracut-emergency.service index 620b565f..3f1e0125 100644 --- a/modules.d/98dracut-systemd/dracut-emergency.service +++ b/modules.d/98dracut-systemd/dracut-emergency.service @@ -12,14 +12,15 @@ Description=Dracut Emergency Shell DefaultDependencies=no After=systemd-vconsole-setup.service Wants=systemd-vconsole-setup.service -Conflicts=emergency.service emergency.target +Conflicts=shutdown.target emergency.target +Before=shutdown.target emergency.target [Service] Environment=HOME=/ Environment=DRACUT_SYSTEMD=1 Environment=NEWROOT=/sysroot WorkingDirectory=/ -ExecStart=/bin/dracut-emergency +ExecStart=-/bin/dracut-emergency ExecStopPost=-/bin/rm -f -- /.console_lock Type=oneshot StandardInput=tty-force diff --git a/modules.d/98dracut-systemd/dracut-initqueue.service b/modules.d/98dracut-systemd/dracut-initqueue.service index fa5ca561..20d6a8c2 100644 --- a/modules.d/98dracut-systemd/dracut-initqueue.service +++ b/modules.d/98dracut-systemd/dracut-initqueue.service @@ -18,6 +18,8 @@ Wants=systemd-udev-trigger.service ConditionPathExists=/usr/lib/initrd-release ConditionPathExists=|/lib/dracut/need-initqueue ConditionKernelCommandLine=|rd.break=initqueue +Conflicts=shutdown.target emergency.target +Before=shutdown.target emergency.target [Service] Environment=DRACUT_SYSTEMD=1 diff --git a/modules.d/98dracut-systemd/dracut-mount.service b/modules.d/98dracut-systemd/dracut-mount.service index 1b14f4a3..baa8edbc 100644 --- a/modules.d/98dracut-systemd/dracut-mount.service +++ b/modules.d/98dracut-systemd/dracut-mount.service @@ -15,6 +15,8 @@ After=dracut-initqueue.service dracut-pre-mount.service ConditionPathExists=/usr/lib/initrd-release ConditionDirectoryNotEmpty=|/lib/dracut/hooks/mount ConditionKernelCommandLine=|rd.break=mount +Conflicts=shutdown.target emergency.target +Before=shutdown.target emergency.target [Service] Environment=DRACUT_SYSTEMD=1 diff --git a/modules.d/98dracut-systemd/dracut-pre-mount.service b/modules.d/98dracut-systemd/dracut-pre-mount.service index 1e4e29f0..c7b123cc 100644 --- a/modules.d/98dracut-systemd/dracut-pre-mount.service +++ b/modules.d/98dracut-systemd/dracut-pre-mount.service @@ -17,6 +17,8 @@ After=cryptsetup.target ConditionPathExists=/usr/lib/initrd-release ConditionDirectoryNotEmpty=|/lib/dracut/hooks/pre-mount ConditionKernelCommandLine=|rd.break=pre-mount +Conflicts=shutdown.target emergency.target +Before=shutdown.target emergency.target [Service] Environment=DRACUT_SYSTEMD=1 diff --git a/modules.d/98dracut-systemd/dracut-pre-pivot.service b/modules.d/98dracut-systemd/dracut-pre-pivot.service index f5a85ce0..20a872a7 100644 --- a/modules.d/98dracut-systemd/dracut-pre-pivot.service +++ b/modules.d/98dracut-systemd/dracut-pre-pivot.service @@ -10,6 +10,7 @@ [Unit] Description=dracut pre-pivot and cleanup hook Documentation=man:dracut-pre-pivot.service(8) +DefaultDependencies=no After=initrd.target initrd-parse-etc.service sysroot.mount After=dracut-initqueue.service dracut-pre-mount.service dracut-mount.service Before=initrd-cleanup.service @@ -23,6 +24,8 @@ ConditionKernelCommandLine=|rd.break=cleanup ConditionKernelCommandLine=|rd.break ConditionPathExists=|/dev/root ConditionPathExists=|/dev/nfs +Conflicts=shutdown.target emergency.target +Before=shutdown.target emergency.target [Service] Environment=DRACUT_SYSTEMD=1 diff --git a/modules.d/98dracut-systemd/dracut-pre-trigger.service b/modules.d/98dracut-systemd/dracut-pre-trigger.service index 826b89b2..2df9d7bf 100644 --- a/modules.d/98dracut-systemd/dracut-pre-trigger.service +++ b/modules.d/98dracut-systemd/dracut-pre-trigger.service @@ -17,6 +17,8 @@ Wants=dracut-pre-udev.service systemd-udevd.service ConditionPathExists=/usr/lib/initrd-release ConditionDirectoryNotEmpty=|/lib/dracut/hooks/pre-trigger ConditionKernelCommandLine=|rd.break=pre-trigger +Conflicts=shutdown.target emergency.target +Before=shutdown.target emergency.target [Service] Environment=DRACUT_SYSTEMD=1 diff --git a/modules.d/98dracut-systemd/dracut-pre-udev.service b/modules.d/98dracut-systemd/dracut-pre-udev.service index 43408f3e..1f71546b 100644 --- a/modules.d/98dracut-systemd/dracut-pre-udev.service +++ b/modules.d/98dracut-systemd/dracut-pre-udev.service @@ -21,6 +21,8 @@ ConditionKernelCommandLine=|rd.break=pre-udev ConditionKernelCommandLine=|rd.driver.blacklist ConditionKernelCommandLine=|rd.driver.pre ConditionKernelCommandLine=|rd.driver.post +Conflicts=shutdown.target emergency.target +Before=shutdown.target emergency.target [Service] Environment=DRACUT_SYSTEMD=1 diff --git a/modules.d/98dracut-systemd/emergency.service b/modules.d/98dracut-systemd/emergency.service index 35d9c317..969a300e 100644 --- a/modules.d/98dracut-systemd/emergency.service +++ b/modules.d/98dracut-systemd/emergency.service @@ -12,6 +12,8 @@ Description=Emergency Shell DefaultDependencies=no After=systemd-vconsole-setup.service Wants=systemd-vconsole-setup.service +Conflicts=shutdown.target +Before=shutdown.target [Service] Environment=HOME=/ -- 2.12.3 ++++++ 0532-List-drivers-rather-than-looking-for-reverse-depende.patch ++++++ >From a233d68d230de2e6cd53c557999ad7cb3184cc46 Mon Sep 17 00:00:00 2001 From: Daniel Molkentin <[email protected]> Date: Mon, 7 Aug 2017 14:23:20 +0200 Subject: [PATCH] List drivers rather than looking for reverse dependencies of block device-providing drivers Adding all reverse dependencies for a driver shot over the top too often (e.g. boo#1037344). This reverts "90kernel-modules: also add block device driver reverse dependencies" (commit 8a679916e597a2c589334c5aeaef8996b18debab) Reference: boo#1037344 Reference: bsc#1034597 --- modules.d/90kernel-modules/module-setup.sh | 28 +++++----------------------- 1 file changed, 5 insertions(+), 23 deletions(-) diff --git a/modules.d/90kernel-modules/module-setup.sh b/modules.d/90kernel-modules/module-setup.sh index 77b6bcae..e1880725 100755 --- a/modules.d/90kernel-modules/module-setup.sh +++ b/modules.d/90kernel-modules/module-setup.sh @@ -3,28 +3,6 @@ # called by dracut installkernel() { if [[ -z $drivers ]]; then - # modules with symbols might have abstractions that depend on them, so let's add those - add_rev_deps() { - local _module - local _line - [[ -f "$srcmods/modules.dep" ]] || return 0 - while read _module; do - local _mod - local _deps - _module=${_module##$srcmods/} - printf "%s\n" "$_module" - egrep ".*:.*$_module.*" $srcmods/modules.dep | ( - local _OLDIFS=$IFS - IFS=: - while read _mod _deps; do - printf "%s\n" "$srcmods/$_mod" - done - IFS=$_OLDIFS - ) - done | sort -u - return 0 - } - block_module_filter() { local _blockfuncs='ahci_platform_get_resources|ata_scsi_ioctl|scsi_add_host|blk_cleanup_queue|register_mtd_blktrans|scsi_esp_register|register_virtio_device|usb_stor_disconnect|mmc_add_host|sdhci_add_host' # subfunctions inherit following FDs @@ -90,7 +68,11 @@ installkernel() { instmods virtio virtio_blk virtio_ring virtio_pci virtio_scsi \ "=drivers/pcmcia" =ide "=drivers/usb/storage" - find_kernel_modules | block_module_filter | add_rev_deps | instmods + find_kernel_modules | block_module_filter | instmods + + # modules that will fail block_module_filter because their implementation + # is spread over multiple modules (bsc#1034597) + instmods hisi_sas_v1_hw hisi_sas_v2_hw # symbols in dep hisi_sas_main # if not on hostonly mode, install all known filesystems, # if the required list is not set via the filesystems variable -- 2.12.3 ++++++ 0533-instmods-check-modules.builtin-in-srcmods.patch ++++++ >From 41c4ef96400cd1dbcce175a4b909ebdbd429e5a2 Mon Sep 17 00:00:00 2001 From: Martin Wilck <[email protected]> Date: Thu, 13 Jul 2017 21:17:27 +0200 Subject: [PATCH] instmods: check modules.builtin in $srcmods Running dracut with --kmoddir causes lots of errors like this: grep: /lib/modules/4.4.73-default/modules.builtin: No such file or directory Fix this by looking up modules.builtin in the proper path. Reference: bsc#1048606 --- dracut-init.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dracut-init.sh b/dracut-init.sh index c9413907..3f30cc9c 100644 --- a/dracut-init.sh +++ b/dracut-init.sh @@ -1137,7 +1137,7 @@ instmods() { return 0 fi - if grep -q "/${_mod}.ko" /lib/modules/$kernel/modules.builtin; then + if grep -q "/${_mod}.ko" $srcmods/modules.builtin; then # Module is built-in return 0 fi -- 2.12.3 ++++++ 0534-ssh-client-Include-nss_-libraries.patch ++++++ >From 9c2c061b2f1760c96b3cc9bcd38d7c1b5f25061d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michal=20Koutn=C3=BD?= <[email protected]> Date: Tue, 15 Aug 2017 15:25:18 +0200 Subject: [PATCH] ssh-client: Include nss_ libraries SSH uses passwd database and thus need various NSS plugin libraries, depending upon setting in nsswitch.conf. SSH binary fails within the dracut environment without the libraries: #:/ ssh No user exist for uid 0 --- modules.d/95ssh-client/module-setup.sh | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/modules.d/95ssh-client/module-setup.sh b/modules.d/95ssh-client/module-setup.sh index 0a0e80cd..a6945c1f 100755 --- a/modules.d/95ssh-client/module-setup.sh +++ b/modules.d/95ssh-client/module-setup.sh @@ -56,7 +56,16 @@ inst_sshenv() # called by dracut install() { + local _nsslibs + inst_multiple ssh scp inst_sshenv + + _nsslibs=$(sed -e '/^#/d' -e 's/^.*://' -e 's/\[NOTFOUND=return\]//' /etc/nsswitch.conf \ + | tr -s '[:space:]' '\n' | sort -u | tr -s '[:space:]' '|') + _nsslibs=${_nsslibs#|} + _nsslibs=${_nsslibs%|} + + inst_libdir_file -n "$_nsslibs" 'libnss_*.so*' } -- 2.12.3 ++++++ 0535-Sync-initramfs-after-creation.patch ++++++ >From 6b4f01ef7728cdb4ade4d6ef44313127d7d8f8f3 Mon Sep 17 00:00:00 2001 From: Ankit Kumar <[email protected]> Date: Mon, 7 Aug 2017 12:13:53 +0530 Subject: [PATCH] Sync initramfs after creation If we trigger crash just after creating initramfs, sometimes it is observed that initramfs is not written to disk causing the subsequent boot to fail. A sync should resolve this. Signed-off-by: Ankit Kumar <[email protected]> --- dracut.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/dracut.sh b/dracut.sh index 35d7e134..39bae4e7 100755 --- a/dracut.sh +++ b/dracut.sh @@ -1832,4 +1832,10 @@ else fi +sync $outfile 2> /dev/null +if [ $? -ne 0 ] ; then + dinfo "dracut: sync operartion on newly created initramfs $outfile failed" + exit 1 +fi + exit 0 -- 2.12.3
