Hello community, here is the log from the commit of package dracut for openSUSE:Factory checked in at 2014-06-18 07:50:20 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/dracut (Old) and /work/SRC/openSUSE:Factory/.dracut.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "dracut" Changes: -------- --- /work/SRC/openSUSE:Factory/dracut/dracut.changes 2014-05-23 08:05:23.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.dracut.new/dracut.changes 2014-06-18 07:52:34.000000000 +0200 @@ -1,0 +2,227 @@ +Mon Jun 16 14:17:43 CEST 2014 - hare@suse.de + +- 40network: always start netroot in ifup.sh (bnc#881235) + * Add: 0066-40network-always-start-netroot-in-ifup.sh.patch +- 95fcoe: check() always returns 255 + * Add: 0067-95fcoe-check-always-returns-255.patch +- 95fcoe-uefi: Test for EFI firmware (bnc#882412) + * Add: 0068-95fcoe-uefi-Test-for-EFI-firmware.patch + +------------------------------------------------------------------- +Fri Jun 13 12:52:27 CEST 2014 - hare@suse.de + +- Rename patches to match git repository: + * Old: more-fips-adjustments.patch + * New: 0057-01fips-Include-some-more-hmacs.patch + * Old: dracut-check-supported.patch + * New: 0058-dracut-add-warning-when-including-unsupported-module.patch +- Add 99suse module to git repository: + * Remove: parse-suse-initrd.sh + * Remove: module-setup-initrd.sh + * Add: 0059-99suse-Add-SUSE-specific-initrd-parsing.patch +- Add write-ifcfg-suse.sh to git repository: + * Remove: write-ifcfg-suse.sh + * Add: 0060-45ifcfg-Add-SUSE-specific-write-ifcfg-file.patch +- Fixup error messages in write-ifcfg-suse.sh (bnc#881286) + * Add: 0061-45ifcfg-Fixup-error-message-in-write-ifcfg-suse.patch +- Add missing 'libgcc_s.so' library (bnc#881692): + * Add: 0062-95iscsi-Install-libgcc_s-library.patch + * Add: 0063-90multipath-Install-libgcc_s-library.patch +- Install missing scsi_dh_alua module (bnc#871617) + * Add: 0064-90kernel-modules-install-scsi_dh_alua.patch +- 95iscsi: fixup bnx2i offload booting (bnc#855747) + * Add: 0065-95iscsi-Fixup-bnx2i-offload-booting.patch + +------------------------------------------------------------------- +Wed Jun 11 18:17:34 UTC 2014 - jeffm@suse.com + +- Add option to warn if unsupported modules are added to the initramfs + - Enable this option for 'make install' when a kernel with + CONFIG_SUSE_KERNEL_SUPPORTED enabled is used. (bnc#882332) + - Add dracut-check-supported.patch + +------------------------------------------------------------------- +Wed Jun 11 12:49:44 UTC 2014 - meissner@suse.com + +- include the several hmacs needed for FIPS integrity checking + of cryptsetup, libgcrypt, libfipscheck1. Also add the openssl + HMACs too as someone else seems to use those too. + Add: more-fips-adjustments.patch + +------------------------------------------------------------------- +Wed Jun 4 14:58:55 CEST 2014 - hare@suse.de + +- Rediff patches to match git repository +- 95fcoe: Check for FCoE devices prior to binaries + * Modify 0055-95fcoe-Only-install-fcoe-module-if-required.patch +- 99base: Install chown instead of chgrp + * Modify 0052-99base-Add-chown-binary.patch +- 95iscsi: do not try to detect iSCSI firmware during booting; + should be handled via commandline parameter + * Modify 0030-95iscsi-Autodetect-iSCSI-firmware.patch +- Rename patch: + * old: 0051-mkinitrd-suse-add-update-booloader-message.patch + new: 0051-mkinitrd-suse-add-update-bootloader-message.patch + +------------------------------------------------------------------- +Wed Jun 4 14:30:07 CEST 2014 - hare@suse.de + +- Rename patches to match git repository: + * old: 0013-Correct-paths-for-openSUSE.patch + new: 0011-Correct-paths-for-openSUSE.patch + * old: 0014-Check-for-plymouth-lib-directories.patch + new: 0012-Check-for-plymouth-lib-directories.patch + * old: dracut_do_not_update_booloader_if_no_kernel_is_found.patch + new: 0013-mkinitrd-suse-do-not-update-bootloader-if-no-kernel-.patch + * old: suse_grub_manpage.patch + new: 0014-Update-dracut-manpage-for-GRUB-Legacy-and-GRUB2.patch + * old: replace_dhclient_with_wickedd_dhcp_supplicants.patch + new: 0015-40network-replace-dhclient-with-wickedd-dhcp-supplic.patch + * old: 0015-add-new-s390x-specific-rule-files.patch + new: 0016-Add-new-s390x-specific-rule-files.patch + * old: change_write_ifcfg_to_suse.patch + new: 0017-45ifcfg-use-distro-specific-scripts.patch + * old: dracut-fix-whitespace-add-drivers_call.patch + new: 0018-mkinitrd-suse-Fix-whitespaces-when-adding-drivers.patch + * old: wait_for_network_race_condition_fix.patch + new: 0019-40network-Fix-race-condition-when-wait-for-networks.patch + * old: dracut-warpclock_module.patch + new: 0020-00warpclock-Set-correct-timezone.patch + * old: s390-dcssblk.patch + new: 0021-95dcssblk-Add-new-module-for-DCSS-block-devices.patch + * old: dracut-install-persistent-rule.patch + new: 0022-95udev-rules-add-persistent-network-rule.patch + * old: dracut-really-always-add-autofs4.patch + new: 0023-systemd-always-tries-to-load-autofs4.patch + * old: mdraid-setup.patch + new: 0024-Fixup-mdraid-setup.patch + * old: 0015-95udev-rules-Add-59-scsi-sg_utils.rules.patch + new: 0025-95udev-rules-Add-59-scsi-sg_utils.rules.patch + * old: 0016-90multipath-add-67-kpartx-compat.rules.patch + new: 0026-90multipath-add-67-kpartx-compat.rules.patch + * old: 0017-90multipath-install-dracut-specific-service-file.patch + new: 0027-90multipath-install-dracut-specific-service-file.patch + * old: 0020-95udev-rules-Include-correct-sg3_utils-rules.patch + new: 0028-95udev-rules-Include-correct-sg3_utils-rules.patch + * old: 0021-90multipath-install-correct-multipath-rules.patch + new: 0029-90multipath-install-correct-multipath-rules.patch + * old: add_dracuts_network_params_for_iscsi.patch + new: 0030-95iscsi-Autodetect-iSCSI-firmware.patch + * old: 0022-90multipath-Fixup-service-file-for-booting.patch + new: 0031-90multipath-Fixup-service-file-for-booting.patch + * old: 0023-mkinitrd-suse.sh-Use-hostonly-and-hostonly-cmdline-c.patch + new: 0032-mkinitrd-suse.sh-Use-hostonly-and-hostonly-cmdline-c.patch + * old: 0024-95iscsi-Set-correct-iscsi_started-value-for-iSCSI-fi.patch + new: 0033-95iscsi-Set-correct-iscsi_started-value-for-iSCSI-fi.patch + * old: 0025-dracut_continue_adding_modules_also_on_error.patch + new: 0034-dracut-Do-not-stop-installing-drivers-if-one-fails.patch + * old: 0026-force_to_add_and_load_kernel_modules_other_than_via_boot_param.patch + new: 0035-Introduce-force-drivers-parameter-and-force_drivers-.patch + * old: 0027-95fcoe-Store-current-configuration-in-dracut-cmdline.patch + new: 0036-95fcoe-Store-current-configuration-in-dracut-cmdline.patch + * old: 0028-95fcoe-update-fcoe-interface-check.patch + new: 0037-95fcoe-update-fcoe-interface-check.patch + * old: 0029-95fcoe-start-lldpad-separately.patch + new: 0038-95fcoe-start-lldpad-separately.patch + * old: 0030-dracut-mkinitd_cleanup_force_host_only_var.patch + new: 0039-Remove-force-parameter-from-mkinitrd.patch + * old: 0031-95fcoe-skip-VLAN-devices-in-fcoe-up.patch + new: 0040-95fcoe-skip-VLAN-devices-in-fcoe-up.patch + * old: 0033-dracut_hostonly_hostonly_cmdline_default.patch + new: 0041-mkinitd-suse-remove-hostonly-and-hostonly-cmdline.patch + * old: 0034-suse.conf.example_extend.patch + new: 0042-Enhance-suse.conf-example-with-SUSE-specific-setting.patch + * old: 0035-always_add_network.patch + new: 0043-40network-always-add-network-module.patch + * old: 0036-add_extra_debug_binaries.patch + new: 0044-Add-find-to-debug-binaries.patch + * old: 0037-fix_s390_network_modules_install.patch + new: 0045-40network-add-missing-_arch-variable-declaration.patch + * old: 0038-remove_waiting_for_swap_dev.patch + new: 0046-dracut-Do-not-wait-for-swap-device.patch + * old: 0039-s390_no_resume_module.patch + new: 0047-95resume-skip-module-for-s390-x.patch + * old: 0041-only_enable_network_if_explicitly_requested.patch + new: 0048-40network-Only-enable-network-interfaces-if-explicit.patch + * old: 0042-ibft_autoconfig_param.patch + new: 0049-95iscsi-Use-ip-ibft-for-ibft-autoconfiguration.patch + * old: 0043-fcoe_strip_quotes.patch + new: 0050-95iscsi-strip-one-set-of-quotes-when-calling-initque.patch + * old: 0044-Add_update_bootloader_msg.patch + new: 0051-mkinitrd-suse-add-update-booloader-message.patch + * old: 0045-add-chown_binary.patch + new: 0052-99base-Add-chown-binary.patch + * old: dracut-fips-module-loading-fixes.patch + new: 0053-01fips-fixup-loading-issues.patch + * old: 0046-ibft_update_cmdline_printing.patch + new: 0054-95iscsi-update-commandline-printing.patch + * old: 0047-only_install_fcoe_if_required.patch + new: 0055-95fcoe-Only-install-fcoe-module-if-required.patch + * old: 0048-cio_ignore.patch + new: 0056-81cio_ignore-handle-cio_ignore-commandline.patch + +------------------------------------------------------------------- +Mon Jun 2 18:29:33 UTC 2014 - trenn@suse.de + +- Mount zipl device on S390 (bnc#874902) + Add 0048-cio_ignore.patch + +------------------------------------------------------------------- +Mon Jun 2 11:42:59 UTC 2014 - trenn@suse.de + +- Only install fcoe if required + and suppress require-binaries output + Add 0047-only_install_fcoe_if_required.patch +- ibft: Correctly show ibft cmdline via print-cmdline + Add 0046-ibft_update_cmdline_printing.patch + +------------------------------------------------------------------- +Mon Jun 2 09:07:27 UTC 2014 - meissner@suse.com + +- dracut-fips-module-loading-fixes.patch: bnc#875855 + - adjust FIPS module list + - on architecture specific modules, failing loading is not + critical +- ship 98selinux, for people that want to use SELinux. + +------------------------------------------------------------------- +Wed May 28 15:54:26 UTC 2014 - trenn@suse.de + +- Update to latest git HEAD: commit 0fa5dbedc5b222435f51f7460a81232ee120c4e1 + Tue May 20 13:23 + Modified dracut_v37_to_HEAD.patch + Modified mdraid-setup.patch + Modified dracut-install-persistent-rule.patch + Removed 0032-98systemd-fixup-rootfs-generator-installation-path.patch +- Add /etc/dracut.d.conf/01-dist modifications to file instead of writing + to it via rpm build section ++++ 30 more lines (skipped) ++++ between /work/SRC/openSUSE:Factory/dracut/dracut.changes ++++ and /work/SRC/openSUSE:Factory/.dracut.new/dracut.changes Old: ---- 0013-Correct-paths-for-openSUSE.patch 0014-Check-for-plymouth-lib-directories.patch 0015-95udev-rules-Add-59-scsi-sg_utils.rules.patch 0015-add-new-s390x-specific-rule-files.patch 0016-90multipath-add-67-kpartx-compat.rules.patch 0017-90multipath-install-dracut-specific-service-file.patch 0020-95udev-rules-Include-correct-sg3_utils-rules.patch 0021-90multipath-install-correct-multipath-rules.patch 0022-90multipath-Fixup-service-file-for-booting.patch 0023-mkinitrd-suse.sh-Use-hostonly-and-hostonly-cmdline-c.patch 0024-95iscsi-Set-correct-iscsi_started-value-for-iSCSI-fi.patch 0025-dracut_continue_adding_modules_also_on_error.patch 0026-force_to_add_and_load_kernel_modules_other_than_via_boot_param.patch 0027-95fcoe-Store-current-configuration-in-dracut-cmdline.patch 0028-95fcoe-update-fcoe-interface-check.patch 0029-95fcoe-start-lldpad-separately.patch 0030-dracut-mkinitd_cleanup_force_host_only_var.patch 0031-95fcoe-skip-VLAN-devices-in-fcoe-up.patch 0032-98systemd-fixup-rootfs-generator-installation-path.patch add_dracuts_network_params_for_iscsi.patch change_write_ifcfg_to_suse.patch dracut-fix-whitespace-add-drivers_call.patch dracut-install-persistent-rule.patch dracut-really-always-add-autofs4.patch dracut-warpclock_module.patch dracut_do_not_update_booloader_if_no_kernel_is_found.patch mdraid-setup.patch module-setup-initrd.sh parse-suse-initrd.sh replace_dhclient_with_wickedd_dhcp_supplicants.patch s390-dcssblk.patch suse_grub_manpage.patch wait_for_network_race_condition_fix.patch write-ifcfg-suse.sh New: ---- 0011-Correct-paths-for-openSUSE.patch 0012-Check-for-plymouth-lib-directories.patch 0013-mkinitrd-suse-do-not-update-bootloader-if-no-kernel-.patch 0014-Update-dracut-manpage-for-GRUB-Legacy-and-GRUB2.patch 0015-40network-replace-dhclient-with-wickedd-dhcp-supplic.patch 0016-Add-new-s390x-specific-rule-files.patch 0017-45ifcfg-use-distro-specific-scripts.patch 0018-mkinitrd-suse-Fix-whitespaces-when-adding-drivers.patch 0019-40network-Fix-race-condition-when-wait-for-networks.patch 0020-00warpclock-Set-correct-timezone.patch 0021-95dcssblk-Add-new-module-for-DCSS-block-devices.patch 0022-95udev-rules-add-persistent-network-rule.patch 0023-systemd-always-tries-to-load-autofs4.patch 0024-Fixup-mdraid-setup.patch 0025-95udev-rules-Add-59-scsi-sg_utils.rules.patch 0026-90multipath-add-67-kpartx-compat.rules.patch 0027-90multipath-install-dracut-specific-service-file.patch 0028-95udev-rules-Include-correct-sg3_utils-rules.patch 0029-90multipath-install-correct-multipath-rules.patch 0030-95iscsi-Autodetect-iSCSI-firmware.patch 0031-90multipath-Fixup-service-file-for-booting.patch 0032-mkinitrd-suse.sh-Use-hostonly-and-hostonly-cmdline-c.patch 0033-95iscsi-Set-correct-iscsi_started-value-for-iSCSI-fi.patch 0034-dracut-Do-not-stop-installing-drivers-if-one-fails.patch 0035-Introduce-force-drivers-parameter-and-force_drivers-.patch 0036-95fcoe-Store-current-configuration-in-dracut-cmdline.patch 0037-95fcoe-update-fcoe-interface-check.patch 0038-95fcoe-start-lldpad-separately.patch 0039-Remove-force-parameter-from-mkinitrd.patch 0040-95fcoe-skip-VLAN-devices-in-fcoe-up.patch 0041-mkinitd-suse-remove-hostonly-and-hostonly-cmdline.patch 0042-Enhance-suse.conf-example-with-SUSE-specific-setting.patch 0043-40network-always-add-network-module.patch 0044-Add-find-to-debug-binaries.patch 0045-40network-add-missing-_arch-variable-declaration.patch 0046-dracut-Do-not-wait-for-swap-device.patch 0047-95resume-skip-module-for-s390-x.patch 0048-40network-Only-enable-network-interfaces-if-explicit.patch 0049-95iscsi-Use-ip-ibft-for-ibft-autoconfiguration.patch 0050-95iscsi-strip-one-set-of-quotes-when-calling-initque.patch 0051-mkinitrd-suse-add-update-bootloader-message.patch 0052-99base-Add-chown-binary.patch 0053-01fips-fixup-loading-issues.patch 0054-95iscsi-update-commandline-printing.patch 0055-95fcoe-Only-install-fcoe-module-if-required.patch 0056-81cio_ignore-handle-cio_ignore-commandline.patch 0057-01fips-Include-some-more-hmacs.patch 0058-dracut-add-warning-when-including-unsupported-module.patch 0059-99suse-Add-SUSE-specific-initrd-parsing.patch 0060-45ifcfg-Add-SUSE-specific-write-ifcfg-file.patch 0061-45ifcfg-Fixup-error-message-in-write-ifcfg-suse.patch 0062-95iscsi-Install-libgcc_s-library.patch 0063-90multipath-Install-libgcc_s-library.patch 0064-90kernel-modules-install-scsi_dh_alua.patch 0065-95iscsi-Fixup-bnx2i-offload-booting.patch 0066-40network-always-start-netroot-in-ifup.sh.patch 0067-95fcoe-check-always-returns-255.patch 0068-95fcoe-uefi-Test-for-EFI-firmware.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ dracut.spec ++++++ --- /var/tmp/diff_new_pack.bfbGBl/_old 2014-06-18 07:52:35.000000000 +0200 +++ /var/tmp/diff_new_pack.bfbGBl/_new 2014-06-18 07:52:35.000000000 +0200 @@ -26,47 +26,69 @@ Group: System/Base Url: https://dracut.wiki.kernel.org/ Source0: http://www.kernel.org/pub/linux/utils/boot/dracut/dracut-%{version}.tar.xz -# openSUSE / SLE module to convert initrd command line parameters to dracut one -# (not to be upstreamed) -Source1: module-setup-initrd.sh -Source2: parse-suse-initrd.sh Source3: mkinitrd_setup_dummy Source4: purge-kernels Source5: purge-kernels.service Source6: dracut-installkernel -Source7: write-ifcfg-suse.sh Patch1: dracut_v37_to_HEAD.patch -Patch11: 0013-Correct-paths-for-openSUSE.patch -Patch12: 0014-Check-for-plymouth-lib-directories.patch -Patch13: dracut_do_not_update_booloader_if_no_kernel_is_found.patch -Patch14: suse_grub_manpage.patch -Patch15: replace_dhclient_with_wickedd_dhcp_supplicants.patch -Patch18: 0015-add-new-s390x-specific-rule-files.patch -Patch19: change_write_ifcfg_to_suse.patch -Patch20: dracut-fix-whitespace-add-drivers_call.patch -Patch21: wait_for_network_race_condition_fix.patch -Patch22: dracut-warpclock_module.patch -Patch23: s390-dcssblk.patch -Patch24: dracut-install-persistent-rule.patch -Patch25: dracut-really-always-add-autofs4.patch -Patch26: mdraid-setup.patch -Patch27: 0015-95udev-rules-Add-59-scsi-sg_utils.rules.patch -Patch28: 0016-90multipath-add-67-kpartx-compat.rules.patch -Patch29: 0017-90multipath-install-dracut-specific-service-file.patch -Patch32: 0020-95udev-rules-Include-correct-sg3_utils-rules.patch -Patch33: 0021-90multipath-install-correct-multipath-rules.patch -Patch34: add_dracuts_network_params_for_iscsi.patch -Patch35: 0022-90multipath-Fixup-service-file-for-booting.patch -Patch36: 0023-mkinitrd-suse.sh-Use-hostonly-and-hostonly-cmdline-c.patch -Patch37: 0024-95iscsi-Set-correct-iscsi_started-value-for-iSCSI-fi.patch -Patch38: 0025-dracut_continue_adding_modules_also_on_error.patch -Patch39: 0026-force_to_add_and_load_kernel_modules_other_than_via_boot_param.patch -Patch40: 0027-95fcoe-Store-current-configuration-in-dracut-cmdline.patch -Patch41: 0028-95fcoe-update-fcoe-interface-check.patch -Patch42: 0029-95fcoe-start-lldpad-separately.patch -Patch43: 0030-dracut-mkinitd_cleanup_force_host_only_var.patch -Patch44: 0031-95fcoe-skip-VLAN-devices-in-fcoe-up.patch -Patch45: 0032-98systemd-fixup-rootfs-generator-installation-path.patch +Patch11: 0011-Correct-paths-for-openSUSE.patch +Patch12: 0012-Check-for-plymouth-lib-directories.patch +Patch13: 0013-mkinitrd-suse-do-not-update-bootloader-if-no-kernel-.patch +Patch14: 0014-Update-dracut-manpage-for-GRUB-Legacy-and-GRUB2.patch +Patch15: 0015-40network-replace-dhclient-with-wickedd-dhcp-supplic.patch +Patch16: 0016-Add-new-s390x-specific-rule-files.patch +Patch17: 0017-45ifcfg-use-distro-specific-scripts.patch +Patch18: 0018-mkinitrd-suse-Fix-whitespaces-when-adding-drivers.patch +Patch19: 0019-40network-Fix-race-condition-when-wait-for-networks.patch +Patch20: 0020-00warpclock-Set-correct-timezone.patch +Patch21: 0021-95dcssblk-Add-new-module-for-DCSS-block-devices.patch +Patch22: 0022-95udev-rules-add-persistent-network-rule.patch +Patch23: 0023-systemd-always-tries-to-load-autofs4.patch +Patch24: 0024-Fixup-mdraid-setup.patch +Patch25: 0025-95udev-rules-Add-59-scsi-sg_utils.rules.patch +Patch26: 0026-90multipath-add-67-kpartx-compat.rules.patch +Patch27: 0027-90multipath-install-dracut-specific-service-file.patch +Patch28: 0028-95udev-rules-Include-correct-sg3_utils-rules.patch +Patch29: 0029-90multipath-install-correct-multipath-rules.patch +Patch30: 0030-95iscsi-Autodetect-iSCSI-firmware.patch +Patch31: 0031-90multipath-Fixup-service-file-for-booting.patch +Patch32: 0032-mkinitrd-suse.sh-Use-hostonly-and-hostonly-cmdline-c.patch +Patch33: 0033-95iscsi-Set-correct-iscsi_started-value-for-iSCSI-fi.patch +Patch34: 0034-dracut-Do-not-stop-installing-drivers-if-one-fails.patch +Patch35: 0035-Introduce-force-drivers-parameter-and-force_drivers-.patch +Patch36: 0036-95fcoe-Store-current-configuration-in-dracut-cmdline.patch +Patch37: 0037-95fcoe-update-fcoe-interface-check.patch +Patch38: 0038-95fcoe-start-lldpad-separately.patch +Patch39: 0039-Remove-force-parameter-from-mkinitrd.patch +Patch40: 0040-95fcoe-skip-VLAN-devices-in-fcoe-up.patch +Patch41: 0041-mkinitd-suse-remove-hostonly-and-hostonly-cmdline.patch +Patch42: 0042-Enhance-suse.conf-example-with-SUSE-specific-setting.patch +Patch43: 0043-40network-always-add-network-module.patch +Patch44: 0044-Add-find-to-debug-binaries.patch +Patch45: 0045-40network-add-missing-_arch-variable-declaration.patch +Patch46: 0046-dracut-Do-not-wait-for-swap-device.patch +Patch47: 0047-95resume-skip-module-for-s390-x.patch +Patch48: 0048-40network-Only-enable-network-interfaces-if-explicit.patch +Patch49: 0049-95iscsi-Use-ip-ibft-for-ibft-autoconfiguration.patch +Patch50: 0050-95iscsi-strip-one-set-of-quotes-when-calling-initque.patch +Patch51: 0051-mkinitrd-suse-add-update-bootloader-message.patch +Patch52: 0052-99base-Add-chown-binary.patch +Patch53: 0053-01fips-fixup-loading-issues.patch +Patch54: 0054-95iscsi-update-commandline-printing.patch +Patch55: 0055-95fcoe-Only-install-fcoe-module-if-required.patch +Patch56: 0056-81cio_ignore-handle-cio_ignore-commandline.patch +Patch57: 0057-01fips-Include-some-more-hmacs.patch +Patch58: 0058-dracut-add-warning-when-including-unsupported-module.patch +Patch59: 0059-99suse-Add-SUSE-specific-initrd-parsing.patch +Patch60: 0060-45ifcfg-Add-SUSE-specific-write-ifcfg-file.patch +Patch61: 0061-45ifcfg-Fixup-error-message-in-write-ifcfg-suse.patch +Patch62: 0062-95iscsi-Install-libgcc_s-library.patch +Patch63: 0063-90multipath-Install-libgcc_s-library.patch +Patch64: 0064-90kernel-modules-install-scsi_dh_alua.patch +Patch65: 0065-95iscsi-Fixup-bnx2i-offload-booting.patch +Patch66: 0066-40network-always-start-netroot-in-ifup.sh.patch +Patch67: 0067-95fcoe-check-always-returns-255.patch +Patch68: 0068-95fcoe-uefi-Test-for-EFI-firmware.patch BuildRequires: asciidoc BuildRequires: bash @@ -86,10 +108,10 @@ Requires: sed Requires: systemd >= 200 # systemd-sysvinit provides: poweroff, reboot, halt +Requires: pixz Requires: systemd-sysvinit Requires: udev > 166 Requires: util-linux >= 2.21 -Requires: xz Recommends: binutils Recommends: logrotate Obsoletes: mkinitrd < 2.8.2 @@ -123,6 +145,8 @@ %patch13 -p1 %patch14 -p1 %patch15 -p1 +%patch16 -p1 +%patch17 -p1 %patch18 -p1 %patch19 -p1 %patch20 -p1 @@ -135,6 +159,8 @@ %patch27 -p1 %patch28 -p1 %patch29 -p1 +%patch30 -p1 +%patch31 -p1 %patch32 -p1 %patch33 -p1 %patch34 -p1 @@ -149,6 +175,29 @@ %patch43 -p1 %patch44 -p1 %patch45 -p1 +%patch46 -p1 +%patch47 -p1 +%patch48 -p1 +%patch49 -p1 +%patch50 -p1 +%patch51 -p1 +%patch52 -p1 +%patch53 -p1 +%patch54 -p1 +%patch55 -p1 +%patch56 -p1 +%patch57 -p1 +%patch58 -p1 +%patch59 -p1 +%patch60 -p1 +%patch61 -p1 +%patch62 -p1 +%patch63 -p1 +%patch64 -p1 +%patch65 -p1 +%patch66 -p1 +%patch67 -p1 +%patch68 -p1 %build %configure\ @@ -166,19 +215,14 @@ rm -fr %{buildroot}/%{dracutlibdir}/modules.d/00dash rm -fr %{buildroot}/%{dracutlibdir}/modules.d/05busybox rm -fr %{buildroot}/%{dracutlibdir}/modules.d/00bootchart -# add suse cmline conversion -mkdir -p %{buildroot}%{dracutlibdir}/modules.d/99suse -install -m 0755 %{SOURCE1} %{buildroot}%{dracutlibdir}/modules.d/99suse/module-setup.sh -install -m 0755 %{SOURCE2} %{buildroot}%{dracutlibdir}/modules.d/99suse/parse-suse-initrd.sh # remove gentoo specific modules rm -fr %{buildroot}%{dracutlibdir}/modules.d/50gensplash -# with systemd IMA and selinux modules do not make sense +# IMA modules are not supported currently. rm -fr %{buildroot}/%{dracutlibdir}/modules.d/96securityfs rm -fr %{buildroot}/%{dracutlibdir}/modules.d/97masterkey rm -fr %{buildroot}/%{dracutlibdir}/modules.d/98integrity -rm -fr %{buildroot}/%{dracutlibdir}/modules.d/98selinux mkdir -p %{buildroot}/boot/dracut mkdir -p %{buildroot}%{_localstatedir}/lib/dracut/overlay @@ -186,11 +230,6 @@ touch %{buildroot}%{_localstatedir}/log/dracut.log install -m 0644 dracut.conf.d/suse.conf.example %{buildroot}%{_sysconfdir}/dracut.conf.d/01-dist.conf -echo '### Generated File - Please do not edit, create a new config file instead ###' >> %{buildroot}%{_sysconfdir}/dracut.conf.d/01-dist.conf -echo 'add_dracutmodules+=" network "' >> %{buildroot}%{_sysconfdir}/dracut.conf.d/01-dist.conf -echo 'compress="xz --check=crc32 -6"' >> %{buildroot}%{_sysconfdir}/dracut.conf.d/01-dist.conf -echo 'hostonly="yes"' >> %{buildroot}%{_sysconfdir}/dracut.conf.d/01-dist.conf -echo 'hostonly_cmdline="yes"' >> %{buildroot}%{_sysconfdir}/dracut.conf.d/01-dist.conf install -m 0644 dracut.conf.d/fips.conf.example %{buildroot}%{_sysconfdir}/dracut.conf.d/40-fips.conf @@ -213,7 +252,6 @@ install -D -m 0755 %{SOURCE6} %{buildroot}/sbin/installkernel %if 0%{?suse_version} -install -D -m 0755 %{SOURCE7} %{buildroot}/%{dracutlibdir}/modules.d/45ifcfg/write-ifcfg-suse.sh rm -f %{buildroot}/%{dracutlibdir}/modules.d/45ifcfg/write-ifcfg.sh ln -s %{dracutlibdir}/modules.d/45ifcfg/write-ifcfg-suse.sh %{buildroot}/%{dracutlibdir}/modules.d/45ifcfg/write-ifcfg.sh %else @@ -306,6 +344,7 @@ %{dracutlibdir}/modules.d/50drm %{dracutlibdir}/modules.d/50plymouth %{dracutlibdir}/modules.d/80cms +%{dracutlibdir}/modules.d/81cio_ignore %{dracutlibdir}/modules.d/90livenet %{dracutlibdir}/modules.d/90qemu-net %{dracutlibdir}/modules.d/90btrfs @@ -344,6 +383,7 @@ %{dracutlibdir}/modules.d/97biosdevname %{dracutlibdir}/modules.d/98ecryptfs %{dracutlibdir}/modules.d/98pollcdrom +%{dracutlibdir}/modules.d/98selinux %{dracutlibdir}/modules.d/98syslog %{dracutlibdir}/modules.d/98systemd %{dracutlibdir}/modules.d/98usrmount ++++++ 0013-Correct-paths-for-openSUSE.patch -> 0011-Correct-paths-for-openSUSE.patch ++++++ --- /work/SRC/openSUSE:Factory/dracut/0013-Correct-paths-for-openSUSE.patch 2014-05-10 08:32:28.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.dracut.new/0011-Correct-paths-for-openSUSE.patch 2014-06-18 07:52:34.000000000 +0200 @@ -1,4 +1,4 @@ -From 5887b84912c9eb3df2e40489ae66e1eca749ebb8 Mon Sep 17 00:00:00 2001 +From 3c3453e92ae055674bd3260a23c98d64a1f2467d Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Thu, 28 Nov 2013 10:07:59 +0100 Subject: [PATCH] Correct paths for openSUSE @@ -10,15 +10,14 @@ Signed-off-by: Hannes Reinecke <hare@suse.de> --- dracut.sh | 2 +- - modules.d/10i18n/module-setup.sh | 2 ++ modules.d/98systemd/rescue.service | 2 +- - 3 files changed, 4 insertions(+), 2 deletions(-) + 2 files changed, 2 insertions(+), 2 deletions(-) -Index: dracut-037/dracut.sh -=================================================================== ---- dracut-037.orig/dracut.sh -+++ dracut-037/dracut.sh -@@ -774,7 +774,7 @@ stdloglvl=$((stdloglvl + verbosity_mod_l +diff --git a/dracut.sh b/dracut.sh +index c4163bc..adf26ad 100755 +--- a/dracut.sh ++++ b/dracut.sh +@@ -774,7 +774,7 @@ stdloglvl=$((stdloglvl + verbosity_mod_l)) [[ $mdadmconf_l ]] && mdadmconf=$mdadmconf_l [[ $lvmconf_l ]] && lvmconf=$lvmconf_l [[ $dracutbasedir ]] || dracutbasedir=/usr/lib/dracut @@ -27,10 +26,10 @@ [[ $tmpdir_l ]] && tmpdir="$tmpdir_l" [[ $tmpdir ]] || tmpdir=/var/tmp [[ $INITRD_COMPRESS ]] && compress=$INITRD_COMPRESS -Index: dracut-037/modules.d/98systemd/rescue.service -=================================================================== ---- dracut-037.orig/modules.d/98systemd/rescue.service -+++ dracut-037/modules.d/98systemd/rescue.service +diff --git a/modules.d/98systemd/rescue.service b/modules.d/98systemd/rescue.service +index edc2461..d80900f 100644 +--- a/modules.d/98systemd/rescue.service ++++ b/modules.d/98systemd/rescue.service @@ -16,7 +16,7 @@ Environment=HOME=/ Environment=DRACUT_SYSTEMD=1 Environment=NEWROOT=/sysroot @@ -40,3 +39,6 @@ ExecStart=-/bin/sh -i -l ExecStopPost=-/bin/rm -f -- /.console_lock ExecStopPost=-/usr/bin/systemctl --fail --no-block default +-- +1.8.4.5 + ++++++ 0014-Check-for-plymouth-lib-directories.patch -> 0012-Check-for-plymouth-lib-directories.patch ++++++ ++++++ 0013-mkinitrd-suse-do-not-update-bootloader-if-no-kernel-.patch ++++++
From 6e2410d3e9403b030125e8d7f523de341466d658 Mon Sep 17 00:00:00 2001 From: Thomas Renninger <trenn@suse.de> Date: Mon, 7 Apr 2014 16:23:49 +0200 Subject: [PATCH] mkinitrd-suse: do not update bootloader if no kernel was found
When no kernel is found mkinitrd-suse should exit without updating the bootloader. References: bnc#858268 Signed-off-by: Hannes Reinecke <hare@suse.de> --- mkinitrd-suse.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/mkinitrd-suse.sh b/mkinitrd-suse.sh index d20270a..b31ea36 100755 --- a/mkinitrd-suse.sh +++ b/mkinitrd-suse.sh @@ -291,7 +291,9 @@ while (($# > 0)); do done [[ $targets && $kernels ]] || default_kernel_images -[[ $targets && $kernels ]] || (error "No kernel found in $boot_dir" && usage) +if [[ ! $targets || ! $kernels ]];then + error "No kernel found in $boot_dir" +fi # We can have several targets/kernels, transform the list to an array targets=( $targets ) -- 1.8.1.4 ++++++ 0014-Update-dracut-manpage-for-GRUB-Legacy-and-GRUB2.patch ++++++
From 3607fd4c8a14ec0a1222e7f7903f6f12648367ef Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Tue, 8 Apr 2014 09:06:43 +0200 Subject: [PATCH] Update dracut manpage for GRUB Legacy and GRUB2
Signed-off-by: sfalken@opensuse.org --- dracut.usage.asc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dracut.usage.asc b/dracut.usage.asc index 6979af6..0787ead 100644 --- a/dracut.usage.asc +++ b/dracut.usage.asc @@ -99,9 +99,9 @@ raid with encryption and LVM on top), as long as you specify the correct filesystem LABEL or UUID on the kernel command line for your root device, dracut will find it and boot from it. -The kernel command line usually can be configured in _/boot/grub/grub.conf_ or -_/boot/grub2/grub.cfg_, if grub is your bootloader and it also can be edited in -the real boot process in the grub menu. +The kernel command line usually can be configured in _/boot/grub/grub.conf_, +for GRUB legacy, or _/boot/grub2/grub.cfg_, for GRUB2 if grub is your +bootloader and it also can be edited in the real boot process in the grub menu. The kernel command line can also be provided by the dhcp server with the root-path option. See <<NetworkBoot>>. -- 1.8.1.4 ++++++ 0015-40network-replace-dhclient-with-wickedd-dhcp-supplic.patch ++++++
From 0aa152e662d2197f92617da4ab813fcd9be6f90f Mon Sep 17 00:00:00 2001 From: Pavel Wieczorkiewicz <pwieczorkiewicz@suse.com> Date: Mon, 7 Apr 2014 16:26:57 +0200 Subject: [PATCH] 40network: replace dhclient with wickedd-dhcp-supplicant
SLES12 is using wickedd, so we need to replace dhclient with wickedd-dhcp-supplicant. References: bnc#866771 Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/40network/dhclient-script.sh | 156 --------------------------------- modules.d/40network/dhclient.conf | 3 - modules.d/40network/ifup.sh | 97 ++++++++++++++++++-- modules.d/40network/kill-dhclient.sh | 17 ---- modules.d/40network/module-setup.sh | 14 +-- 5 files changed, 99 insertions(+), 188 deletions(-) delete mode 100755 modules.d/40network/dhclient-script.sh delete mode 100644 modules.d/40network/dhclient.conf delete mode 100755 modules.d/40network/kill-dhclient.sh diff --git a/modules.d/40network/dhclient-script.sh b/modules.d/40network/dhclient-script.sh deleted file mode 100755 index ba05250..0000000 --- a/modules.d/40network/dhclient-script.sh +++ /dev/null @@ -1,156 +0,0 @@ -#!/bin/sh -# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- -# ex: ts=8 sw=4 sts=4 et filetype=sh - -PATH=/usr/sbin:/usr/bin:/sbin:/bin - -type getarg >/dev/null 2>&1 || . /lib/dracut-lib.sh -type ip_to_var >/dev/null 2>&1 || . /lib/net-lib.sh - -# We already need a set netif here -netif=$interface - -# Huh? Interface configured? -[ -f "/tmp/net.$netif.up" ] && exit 0 - -setup_interface() { - ip=$new_ip_address - mtu=$new_interface_mtu - mask=$new_subnet_mask - bcast=$new_broadcast_address - gw=${new_routers%%,*} - domain=$new_domain_name - search=$(printf -- "$new_domain_search") - namesrv=$new_domain_name_servers - hostname=$new_host_name - lease_time=$new_dhcp_lease_time - - [ -f /tmp/net.$netif.override ] && . /tmp/net.$netif.override - - # Taken from debian dhclient-script: - # The 576 MTU is only used for X.25 and dialup connections - # where the admin wants low latency. Such a low MTU can cause - # problems with UDP traffic, among other things. As such, - # disallow MTUs from 576 and below by default, so that broken - # MTUs are ignored, but higher stuff is allowed (1492, 1500, etc). - if [ -n "$mtu" ] && [ $mtu -gt 576 ] ; then - if ! ip link set $netif mtu $mtu ; then - ip link set $netif down - ip link set $netif mtu $mtu - linkup $netif - fi - fi - - ip addr add $ip${mask:+/$mask} ${bcast:+broadcast $bcast} \ - valid_lft ${lease_time} preferred_lft ${lease_time} \ - dev $netif - - [ -n "$gw" ] && echo ip route add default via $gw dev $netif > /tmp/net.$netif.gw - - [ -n "${search}${domain}" ] && echo "search $search $domain" > /tmp/net.$netif.resolv.conf - if [ -n "$namesrv" ] ; then - for s in $namesrv; do - echo nameserver $s - done - fi >> /tmp/net.$netif.resolv.conf - - # Note: hostname can be fqdn OR short hostname, so chop off any - # trailing domain name and explicity add any domain if set. - [ -n "$hostname" ] && echo "echo ${hostname%.$domain}${domain:+.$domain} > /proc/sys/kernel/hostname" > /tmp/net.$netif.hostname -} - -setup_interface6() { - domain=$new_domain_name - search=$(printf -- "$new_domain_search") - namesrv=$new_domain_name_servers - hostname=$new_host_name - [ -n "$new_dhcp_lease_time" ] && lease_time=$new_dhcp_lease_time - [ -n "$new_max_life" ] && lease_time=$new_max_life - preferred_lft=$lease_time - [ -n "$new_preferred_life" ] && preferred_lft=$new_preferred_life - - [ -f /tmp/net.$netif.override ] && . /tmp/net.$netif.override - - ip -6 addr add ${new_ip6_address}/${new_ip6_prefixlen} \ - dev ${netif} scope global \ - ${lease_time:+valid_lft $lease_time} \ - ${preferred_lft:+preferred_lft ${preferred_lft}} - - [ -n "${search}${domain}" ] && echo "search $search $domain" > /tmp/net.$netif.resolv.conf - if [ -n "$namesrv" ] ; then - for s in $namesrv; do - echo nameserver $s - done - fi >> /tmp/net.$netif.resolv.conf - - # Note: hostname can be fqdn OR short hostname, so chop off any - # trailing domain name and explicity add any domain if set. - [ -n "$hostname" ] && echo "echo ${hostname%.$domain}${domain:+.$domain} > /proc/sys/kernel/hostname" > /tmp/net.$netif.hostname -} - -case $reason in - PREINIT) - echo "dhcp: PREINIT $netif up" - linkup $netif - ;; - - PREINIT6) - echo "dhcp: PREINIT $netif up" - linkup $netif - ;; - - BOUND) - echo "dhcp: BOND setting $netif" - unset layer2 - if [ -f /sys/class/net/$netif/device/layer2 ]; then - read layer2 < /sys/class/net/$netif/device/layer2 - fi - if [ "$layer2" != "0" ]; then - if ! arping -q -D -c 2 -I $netif $new_ip_address ; then - warn "Duplicate address detected for $new_ip_address while doing dhcp. retrying" - exit 1 - fi - fi - unset layer2 - setup_interface - set | while read line; do - [ "${line#new_}" = "$line" ] && continue - echo "$line" - done >/tmp/dhclient.$netif.dhcpopts - - { - echo '. /lib/net-lib.sh' - echo "setup_net $netif" - echo "source_hook initqueue/online $netif" - [ -e /tmp/net.$netif.manualup ] || echo "/sbin/netroot $netif" - echo "rm -f -- $hookdir/initqueue/setup_net_$netif.sh" - } > $hookdir/initqueue/setup_net_$netif.sh - - echo "[ -f /tmp/net.$netif.did-setup ]" > $hookdir/initqueue/finished/dhclient-$netif.sh - >/tmp/net.$netif.up - ;; - - BOUND6) - echo "dhcp: BOND6 setting $netif" - setup_interface6 - - set | while read line; do - [ "${line#new_}" = "$line" ] && continue - echo "$line" - done >/tmp/dhclient.$netif.dhcpopts - - { - echo '. /lib/net-lib.sh' - echo "setup_net $netif" - echo "source_hook initqueue/online $netif" - [ -e /tmp/net.$netif.manualup ] || echo "/sbin/netroot $netif" - echo "rm -f -- $hookdir/initqueue/setup_net_$netif.sh" - } > $hookdir/initqueue/setup_net_$netif.sh - - echo "[ -f /tmp/net.$netif.did-setup ]" > $hookdir/initqueue/finished/dhclient-$netif.sh - >/tmp/net.$netif.up - ;; - *) echo "dhcp: $reason";; -esac - -exit 0 diff --git a/modules.d/40network/dhclient.conf b/modules.d/40network/dhclient.conf deleted file mode 100644 index dbf5882..0000000 --- a/modules.d/40network/dhclient.conf +++ /dev/null @@ -1,3 +0,0 @@ -request subnet-mask, broadcast-address, time-offset, routers, - domain-name, domain-name-servers, domain-search, host-name, - root-path, interface-mtu; diff --git a/modules.d/40network/ifup.sh b/modules.d/40network/ifup.sh index 7740be5..99d2ed4 100755 --- a/modules.d/40network/ifup.sh +++ b/modules.d/40network/ifup.sh @@ -88,21 +88,106 @@ else [ -e /tmp/net.$(cat /sys/class/net/$netif/address).did-setup ] && exit 0 fi +dhcp_apply() { + if [ -f /tmp/leaseinfo.${netif}.dhcp.ipv${1:1:1} ]; then + . /tmp/leaseinfo.${netif}.dhcp.ipv${1:1:1} + else + warn "DHCP failed"; + return 1 + fi + + if [ -z "${IPADDR}" ] || [ -z "${INTERFACE}" ]; then + warn "Missing crucial DHCP variables" + return 1 + fi + + # Assign IP address + ip $1 addr add "$IPADDR" ${BROADCAST:+broadcast $BROADCAST} dev "$INTERFACE" + + # Assign network route the interface is attached to + if [ -n "${NETWORK}" ]; then + ip $1 route add "$NETWORK"/"$PREFIXLEN" dev "$INTERFACE" + fi + + # Assign provided routes + local r route=() + if [ -n "${ROUTES}" ]; then + for r in ${ROUTES}; do + route=(${r//,/ }) + ip $1 route add "$route[0]"/"$route[1]" via "$route[2]" dev "$INTERFACE" + done + fi + + # Assign provided routers + local g + if [ -n "${GATEWAYS}" ]; then + for g in ${GATEWAYS}; do + ip $1 route add default via "$g" dev "$INTERFACE" && break + done + fi + + # Setup hostname + [ -n "${HOSTNAME}" ] && hostname "$HOSTNAME" + + # If nameserver= has not been specified, use what dhcp provides + if [ ! -s /tmp/net.$netif.resolv.conf ]; then + if [ -n "${DNSDOMAIN}" ]; then + echo domain "${DNSDOMAIN}" + fi >> /tmp/net.$netif.resolv.conf + + if [ -n "${DNSSEARCH}" ]; then + echo search "${DNSSEARCH}" + fi >> /tmp/net.$netif.resolv.conf + + if [ -n "${DNSSERVERS}" ] ; then + for s in ${DNSSERVERS}; do + echo nameserver "$s" + done + fi >> /tmp/net.$netif.resolv.conf + fi + [ -e /tmp/net.$netif.resolv.conf ] && \ + cp -f /tmp/net.$netif.resolv.conf /etc/resolv.conf + + info "DHCP is finished successfully" + return 0 +} + # Run dhclient do_dhcp() { # dhclient-script will mark the netif up and generate the online # event for nfsroot # XXX add -V vendor class and option parsing per kernel - [ -e /tmp/dhclient.$netif.pid ] && return 0 + [ -f /tmp/leaseinfo.${netif}.dhcp.ipv${1:1:1} ] && return 0 + + info "Preparation for DHCP transaction" + + local dhclient='' + if [ "$1" = "-4" ] ; then + dhclient="wickedd-dhcp4" + elif [ "$1" = "-6" ] ; then + dhclient="wickedd-dhcp6" + fi + + # Address changed + ip $1 addr flush dev "$netif" if ! iface_has_link $netif; then - echo "No carrier detected" - return 1 + warn "No carrier detected" + warn "Trying to set $netif up..." + ip $1 link set dev "$netif" up + if ! iface_has_link $netif; then + warn "Failed..." + return 1 + fi fi + echo "Starting dhcp for interface $netif" - dhclient "$@" -1 -q -cf /etc/dhclient.conf -pf /tmp/dhclient.$netif.pid -lf /tmp/dhclient.$netif.lease $netif \ - || echo "dhcp failed" + $dhclient --test $netif > /tmp/leaseinfo.${netif}.dhcp.ipv${1:1:1} + dhcp_apply $1 || return $? + + echo $netif > /tmp/setup_net_${netif}.ok + return 0 } load_ipv6() { @@ -226,8 +311,6 @@ if [ -e /tmp/team.info ]; then fi fi -# XXX need error handling like dhclient-script - if [ -e /tmp/bridge.info ]; then . /tmp/bridge.info # start bridge if necessary diff --git a/modules.d/40network/kill-dhclient.sh b/modules.d/40network/kill-dhclient.sh deleted file mode 100755 index 78060f5..0000000 --- a/modules.d/40network/kill-dhclient.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/sh -# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- -# ex: ts=8 sw=4 sts=4 et filetype=sh - -for f in /tmp/dhclient.*.pid; do - [ -e $f ] || continue - read PID < $f; - kill $PID >/dev/null 2>&1 -done - -sleep 0.1 - -for f in /tmp/dhclient.*.pid; do - [ -e $f ] || continue - read PID < $f; - kill -9 $PID >/dev/null 2>&1 -done diff --git a/modules.d/40network/module-setup.sh b/modules.d/40network/module-setup.sh index 1df4174..b54f873 100755 --- a/modules.d/40network/module-setup.sh +++ b/modules.d/40network/module-setup.sh @@ -2,11 +2,14 @@ # -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- # ex: ts=8 sw=4 sts=4 et filetype=sh +WICKEDD_DHCP_PATH="/usr/lib/wicked/bin" +WICKED_EXT_PATH="/etc/wicked/extensions" + # called by dracut check() { local _program - require_binaries ip arping dhclient || return 1 + require_binaries ip arping $WICKEDD_DHCP_PATH/wickedd-dhcp4 $WICKEDD_DHCP_PATH/wickedd-dhcp6 || return 1 return 255 } @@ -72,16 +75,18 @@ installkernel() { # called by dracut install() { local _arch _i _dir - inst_multiple ip arping dhclient sed + inst_multiple ip arping hostname sed inst_multiple -o ping ping6 inst_multiple -o brctl inst_multiple -o teamd teamdctl teamnl inst_simple /etc/libnl/classid + inst_simple "$WICKEDD_DHCP_PATH/wickedd-dhcp4" "/usr/sbin/wickedd-dhcp4" + inst_simple "$WICKEDD_DHCP_PATH/wickedd-dhcp6" "/usr/sbin/wickedd-dhcp6" + inst_libdir_file "libwicked*.so.*" + inst_libdir_file "libdbus-1.so.*" inst_script "$moddir/ifup.sh" "/sbin/ifup" inst_script "$moddir/netroot.sh" "/sbin/netroot" - inst_script "$moddir/dhclient-script.sh" "/sbin/dhclient-script" inst_simple "$moddir/net-lib.sh" "/lib/net-lib.sh" - inst_simple "$moddir/dhclient.conf" "/etc/dhclient.conf" inst_hook pre-udev 50 "$moddir/ifname-genrules.sh" inst_hook pre-udev 60 "$moddir/net-genrules.sh" inst_hook cmdline 91 "$moddir/dhcp-root.sh" @@ -92,7 +97,6 @@ install() { inst_hook cmdline 97 "$moddir/parse-bridge.sh" inst_hook cmdline 98 "$moddir/parse-ip-opts.sh" inst_hook cmdline 99 "$moddir/parse-ifname.sh" - inst_hook cleanup 10 "$moddir/kill-dhclient.sh" _arch=$(uname -m) -- 1.8.4.5 ++++++ 0016-Add-new-s390x-specific-rule-files.patch ++++++
From 7995f23a106e28afa0204b5eca68671cb514b1d9 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Tue, 21 Jan 2014 14:32:09 +0100 Subject: [PATCH] Add new s390x-specific rule files
With the new s390x configuration tool the naming of the udev rules files have changed. So add these to the existing ones to be compatible with existing and new installations. References: bnc#856585 Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/95dasd_rules/module-setup.sh | 4 ++-- modules.d/95zfcp_rules/module-setup.sh | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/modules.d/95dasd_rules/module-setup.sh b/modules.d/95dasd_rules/module-setup.sh index 51c315d..451fc25 100755 --- a/modules.d/95dasd_rules/module-setup.sh +++ b/modules.d/95dasd_rules/module-setup.sh @@ -6,7 +6,7 @@ check() { local _arch=$(uname -m) [ "$_arch" = "s390" -o "$_arch" = "s390x" ] || return 1 - require_binaries dasd_configure /usr/lib/udev/collect || return 1 + require_binaries /usr/lib/udev/collect || return 1 return 0 } @@ -18,10 +18,10 @@ depends() { # called by dracut install() { - inst_multiple /usr/lib/udev/collect inst_hook cmdline 30 "$moddir/parse-dasd.sh" if [[ $hostonly ]] ; then inst_rules_wildcard 51-dasd-*.rules + inst_rules_wildcard 41-s390x-dasd-*.rules fi inst_rules 59-dasd.rules } diff --git a/modules.d/95zfcp_rules/module-setup.sh b/modules.d/95zfcp_rules/module-setup.sh index d9879cb..849645c 100755 --- a/modules.d/95zfcp_rules/module-setup.sh +++ b/modules.d/95zfcp_rules/module-setup.sh @@ -21,5 +21,6 @@ install() { inst_hook cmdline 30 "$moddir/parse-zfcp.sh" if [[ $hostonly ]] ; then inst_rules_wildcard 51-zfcp-*.rules + inst_rules_wildcard 41-s390x-zfcp-*.rules fi } -- 1.8.1.4 ++++++ 0017-45ifcfg-use-distro-specific-scripts.patch ++++++
From 2bddf461e38b952a79e31650ba828a7ee506cbe9 Mon Sep 17 00:00:00 2001 From: Pawel Wieczorkiewicz <pwieczorkiewicz@suse.de> Date: Tue, 8 Apr 2014 08:48:27 +0200 Subject: [PATCH] 45ifcfg: use distro-specific scripts
Detect the system flavor and write the ifcfg files accordingly. - Do not move ifcfg to -suse and -redhat files to avoid re-diffing after each upgrade. Handle this in the spec file and a separate write-ifcfg-suse.sh source file Signed-off-by: Hannes Reinecke <hare@suse.de> Modified-by: Thomas Rennigner <trenn@suse.de> --- modules.d/40network/ifup.sh | 1 + modules.d/45ifcfg/module-setup.sh | 8 +++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/modules.d/40network/ifup.sh b/modules.d/40network/ifup.sh index 99d2ed4..934c61e 100755 --- a/modules.d/40network/ifup.sh +++ b/modules.d/40network/ifup.sh @@ -186,6 +186,7 @@ do_dhcp() { $dhclient --test $netif > /tmp/leaseinfo.${netif}.dhcp.ipv${1:1:1} dhcp_apply $1 || return $? + echo $netif > /tmp/net.${netif}.did-setup echo $netif > /tmp/setup_net_${netif}.ok return 0 } diff --git a/modules.d/45ifcfg/module-setup.sh b/modules.d/45ifcfg/module-setup.sh index c407f45..164a580 100755 --- a/modules.d/45ifcfg/module-setup.sh +++ b/modules.d/45ifcfg/module-setup.sh @@ -4,7 +4,13 @@ # called by dracut check() { - [[ -d /etc/sysconfig/network-scripts ]] && return 0 + local link=$(readlink $moddir/write-ifcfg.sh) + [[ "$link" = "write-ifcfg-suse.sh" ]] && \ + [[ -d /etc/sysconfig/network ]] && \ + return 0 + [[ "$link" = "write-ifcfg-redhat.sh" ]] && \ + [[ -d /etc/sysconfig/network-scripts ]] && \ + return 0 return 255 } -- 1.8.4.5 ++++++ 0018-mkinitrd-suse-Fix-whitespaces-when-adding-drivers.patch ++++++
From 942274be37437eefad4ebebae40af43d7bd336b6 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Tue, 8 Apr 2014 08:49:53 +0200 Subject: [PATCH] mkinitrd-suse: Fix whitespaces when adding drivers
Signed-off-by: Hannes Reinecke <hare@suse.de> --- mkinitrd-suse.sh | 49 +++++++++++++++++++++++++------------------------ 1 file changed, 25 insertions(+), 24 deletions(-) diff --git a/mkinitrd-suse.sh b/mkinitrd-suse.sh index b31ea36..1c2634f 100755 --- a/mkinitrd-suse.sh +++ b/mkinitrd-suse.sh @@ -70,10 +70,7 @@ usage () { $cmd " -j device Journal device" $cmd " -D interface Run dhcp on the specified interface." $cmd " -I interface Configure the specified interface statically." - $cmd " -a acpi_dsdt Attach compiled ACPI DSDT (Differentiated" - $cmd " System Description Table) to initrd. This" - $cmd " replaces the DSDT of the BIOS. Defaults to" - $cmd " the ACPI_DSDT variable in /etc/sysconfig/kernel." + $cmd " -a acpi_dsdt Obsolete, do not use." $cmd " -s size Add splash animation and bootscreen to initrd." [[ $1 = '-n' ]] && exit 0 @@ -310,11 +307,10 @@ if [ -f /etc/sysconfig/kernel ] ; then . /etc/sysconfig/kernel fi [[ $module_list ]] || module_list="${INITRD_MODULES}" -basicmodules="$basicmodules ${module_list}" [[ $domu_module_list ]] || domu_module_list="${DOMU_INITRD_MODULES}" -[[ $acpi_dsdt ]] || acpi_dsdt="${ACPI_DSDT}" +shopt -s extglob -echo "Creating: target|kernel|dracut args|basicmodules " +echo "Creating: target|kernel|dracut args " for ((i=0 ; $i<${#targets[@]} ; i++)); do if [[ $img_vers ]];then @@ -324,28 +320,33 @@ for ((i=0 ; $i<${#targets[@]} ; i++)); do fi kernel="${kernels[$i]}" + if is_xen_kernel $kernel $rootfs ; then + modules_all="${module_list} ${domu_module_list}" + else + modules_all="${module_list}" + fi + + # Remove leading and trailing spaces needs (set above): shopt -s extglob + modules_all=${modules_all%%+([[:space:]])} + modules_all=${modules_all##+([[:space:]])} + # Duplicate code: No way found how to redirect output based on $quiet if [[ $quiet == 1 ]];then - echo "$target|$kernel|$dracut_args|$basicmodules" - if is_xen_kernel $kernel $rootfs ; then - basicmodules="$basicmodules ${domu_module_list}" - fi - if [[ $basicmodules ]]; then - $dracut_cmd $dracut_args --add-drivers "$basicmodules" "$target" \ - "$kernel" &>/dev/null - else + echo "$target|$kernel|$dracut_args_all" + # Duplicate code: --add-drivers must not be called with empty string + # -> dracut bug workarounded ugly, because of complex whitespace + # expansion magics + if [ -n "${modules_all}" ];then + $dracut_cmd $dracut_args --add-drivers "${modules_all}" "$target" "$kernel" &>/dev/null + else $dracut_cmd $dracut_args "$target" "$kernel" &>/dev/null - fi + fi else - if is_xen_kernel $kernel $rootfs ; then - basicmodules="$basicmodules ${domu_module_list}" - fi - if [[ $basicmodules ]]; then - $dracut_cmd $dracut_args --add-drivers "$basicmodules" "$target" \ - "$kernel" - else + if [ -n "${modules_all}" ];then + $dracut_cmd $dracut_args --add-drivers "${modules_all}" "$target" "$kernel" + else $dracut_cmd $dracut_args "$target" "$kernel" - fi + fi fi done -- 1.8.1.4 ++++++ 0019-40network-Fix-race-condition-when-wait-for-networks.patch ++++++
From 330bb44b7773c7b861a6aaa32d4524c783a162f0 Mon Sep 17 00:00:00 2001 From: Pawel Wieczorkiewicz <pwieczorkiewicz@suse.de> Date: Tue, 8 Apr 2014 08:50:55 +0200 Subject: [PATCH] 40network: Fix race condition when wait for networks
If no network related params are specific, but rd.neednet=1 is set, the default initqueue action is to wait until one of the network interfaces is marked as setup properly. This also help with initqueue's race condition when the network interface shows upd late References: bnc#866771 Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/40network/net-genrules.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/modules.d/40network/net-genrules.sh b/modules.d/40network/net-genrules.sh index af2f09c..6ec9239 100755 --- a/modules.d/40network/net-genrules.sh +++ b/modules.d/40network/net-genrules.sh @@ -98,6 +98,9 @@ command -v fix_bootif >/dev/null || . /lib/net-lib.sh cond='ACTION=="add", SUBSYSTEM=="net"' # if you change the name of "91-default-net.rules", also change modules.d/80cms/cmssetup.sh echo "$cond, $runcmd" > /etc/udev/rules.d/91-default-net.rules + if [ "$NEEDNET" = "1" ]; then + echo "[ -f /tmp/net.*.did-setup ]" >$hookdir/initqueue/finished/wait-network.sh + fi fi # if you change the name of "90-net.rules", also change modules.d/80cms/cmssetup.sh -- 1.8.1.4 ++++++ 0020-00warpclock-Set-correct-timezone.patch ++++++
From 8792c2c46d3841ea11b9bd30e388eaeb64549fdc Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Thu, 5 Dec 2013 09:29:28 +0100 Subject: [PATCH] 00warpclock: Set correct timezone
Add module for setting correct timezone. References: bnc#830060 Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/00warpclock/module-setup.sh | 22 ++++++++++++++++++++++ modules.d/00warpclock/warpclock.sh | 9 +++++++++ 2 files changed, 31 insertions(+) create mode 100755 modules.d/00warpclock/module-setup.sh create mode 100755 modules.d/00warpclock/warpclock.sh diff --git a/modules.d/00warpclock/module-setup.sh b/modules.d/00warpclock/module-setup.sh new file mode 100755 index 0000000..4d18795 --- /dev/null +++ b/modules.d/00warpclock/module-setup.sh @@ -0,0 +1,22 @@ +#!/bin/bash +# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- +# ex: ts=8 sw=4 sts=4 et filetype=sh + +# called by dracut +check() { + [ -e /etc/localtime -a -e /etc/adjtime ] +} + +# called by dracut +depends() { + return 0 +} + +# called by dracut +install() { + inst /usr/share/zoneinfo/UTC + inst /etc/localtime + inst /etc/adjtime + inst_hook pre-trigger 00 "$moddir/warpclock.sh" + inst /sbin/hwclock +} diff --git a/modules.d/00warpclock/warpclock.sh b/modules.d/00warpclock/warpclock.sh new file mode 100755 index 0000000..f64818c --- /dev/null +++ b/modules.d/00warpclock/warpclock.sh @@ -0,0 +1,9 @@ +#!/bin/sh + +if test -e /etc/adjtime ; then + while read line ; do + if test "$line" = LOCAL ; then + hwclock --systz + fi + done < /etc/adjtime +fi -- 1.8.1.4 ++++++ 0021-95dcssblk-Add-new-module-for-DCSS-block-devices.patch ++++++
From c4a980a8fa7a2a9d5e25063b0d5b5070e59aa2cc Mon Sep 17 00:00:00 2001 From: Thomas Renninger <trenn@suse.de> Date: Tue, 8 Apr 2014 08:53:59 +0200 Subject: [PATCH] 95dcssblk: Add new module for DCSS block devices
Add s390 dcssblk driver and introduce rd.dcssblk= to pass mounts that should get activated at initrd stage. References: FATE#308263 Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/95dcssblk/module-setup.sh | 28 ++++++++++++++++++++++++++++ modules.d/95dcssblk/parse-dcssblk.sh | 8 ++++++++ 2 files changed, 36 insertions(+) create mode 100755 modules.d/95dcssblk/module-setup.sh create mode 100755 modules.d/95dcssblk/parse-dcssblk.sh diff --git a/modules.d/95dcssblk/module-setup.sh b/modules.d/95dcssblk/module-setup.sh new file mode 100755 index 0000000..11e3849 --- /dev/null +++ b/modules.d/95dcssblk/module-setup.sh @@ -0,0 +1,28 @@ +#!/bin/bash +# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- +# ex: ts=8 sw=4 sts=4 et filetype=sh + +# called by dracut +check() { + local _arch=$(uname -m) + [ "$_arch" = "s390" -o "$_arch" = "s390x" ] || return 1 + return 0 +} + +# called by dracut +installkernel() { + if [ -e /sys/devices/dcssblk/*/block/dcssblk* ];then + hostonly='' instmods dcssblk + fi +} + +# called by dracut +install() { + inst_hook cmdline 30 "$moddir/parse-dcssblk.sh" + # If there is a config file which contains avail (best only of root device) + # disks to activate add it and use it during boot -> then we do not need + # a kernel param anymore + #if [[ $hostonly ]]; then + # inst /etc/dcssblk.conf + #fi +} diff --git a/modules.d/95dcssblk/parse-dcssblk.sh b/modules.d/95dcssblk/parse-dcssblk.sh new file mode 100755 index 0000000..8f17440 --- /dev/null +++ b/modules.d/95dcssblk/parse-dcssblk.sh @@ -0,0 +1,8 @@ +#!/bin/sh +# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- +# ex: ts=8 sw=4 sts=4 et filetype=sh +dcssblk_arg=$(getarg rd.dcssblk=) +if [ $? == 0 ];then + info "Loading dcssblk segments=$dcssblk_arg" + modprobe dcssblk segments=$dcssblk_arg +fi -- 1.8.1.4 ++++++ 0022-95udev-rules-add-persistent-network-rule.patch ++++++
From 577e9e8a0d5e060e14ac1caef28201bfa208275c Mon Sep 17 00:00:00 2001 From: Robert Milasan <rmilasan@suse.cz> Date: Tue, 8 Apr 2014 08:54:42 +0200 Subject: [PATCH] 95udev-rules: add persistent network rule
Add support for 70-persistent-net.rules in dracut. References: bnc#868375 Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/95udev-rules/module-setup.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/modules.d/95udev-rules/module-setup.sh b/modules.d/95udev-rules/module-setup.sh index fab4ffc..41985df 100755 --- a/modules.d/95udev-rules/module-setup.sh +++ b/modules.d/95udev-rules/module-setup.sh @@ -32,6 +32,7 @@ install() { 60-pcmcia.rules \ 50-udev.rules 95-late.rules \ 50-firmware.rules \ + 70-persistent-net.rules \ 59-scsi-sg3_utils.rules \ 75-net-description.rules \ 80-net-name-slot.rules 80-net-setup-link.rules \ -- 1.8.4.5 ++++++ 0023-systemd-always-tries-to-load-autofs4.patch ++++++
From e7fce3b5ce42ffe1184d5d23e5ed02325af243bb Mon Sep 17 00:00:00 2001 From: Thomas Renninger <trenn@suse.de> Date: Wed, 9 Apr 2014 14:10:57 +0200 Subject: [PATCH] systemd always tries to load autofs4
During boot systemd tries to load autofs4, but dracut will only add it if it's loaded by the time dracut is run. Modify dracut to always load autofs4. References: bnc#869411 Signed-off-by: Thomas Renninger <trenn@suse.de> --- modules.d/98systemd/module-setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules.d/98systemd/module-setup.sh b/modules.d/98systemd/module-setup.sh index cf1b2e7..4516b9a 100755 --- a/modules.d/98systemd/module-setup.sh +++ b/modules.d/98systemd/module-setup.sh @@ -20,7 +20,7 @@ depends() { } installkernel() { - instmods autofs4 ipv6 + hostonly='' instmods autofs4 ipv6 } # called by dracut -- 1.8.4.5 ++++++ 0024-Fixup-mdraid-setup.patch ++++++
From 8e920171da42a1c4371db94e4d4fb75f3f261d66 Mon Sep 17 00:00:00 2001 From: NeilBrown <neilb@suse.de> Date: Wed, 9 Apr 2014 14:14:03 +0200 Subject: [PATCH] Fixup mdraid setup
This sed script to edit 64-md-raid-assemble.rules needs to be adjusted for latest mdadm References: bnc#866660 Signed-off-by: NeilBrown <neilb@suse.de> --- modules.d/90mdraid/module-setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules.d/90mdraid/module-setup.sh b/modules.d/90mdraid/module-setup.sh index 81c94f2..4963537 100755 --- a/modules.d/90mdraid/module-setup.sh +++ b/modules.d/90mdraid/module-setup.sh @@ -88,7 +88,7 @@ install() { for rule in 64-md-raid.rules 64-md-raid-assembly.rules; do rule_path="${initdir}${udevdir}/rules.d/${rule}" [ -f "${rule_path}" ] && sed -i -r \ - -e '/RUN\+?="[[:alpha:]/]*mdadm[[:blank:]]+(--incremental|-I)[[:blank:]]+(\$env\{DEVNAME\}|\$tempnode|\$devnode)/d' \ + -e '/(RUN|IMPORT\{program\})\+?="[[:alpha:]/]*mdadm[[:blank:]]+(--incremental|-I)[[:blank:]]+(--export )?(\$env\{DEVNAME\}|\$tempnode|\$devnode)/d' \ "${rule_path}" done -- 1.8.4.5 ++++++ 0015-95udev-rules-Add-59-scsi-sg_utils.rules.patch -> 0025-95udev-rules-Add-59-scsi-sg_utils.rules.patch ++++++ --- /work/SRC/openSUSE:Factory/dracut/0015-95udev-rules-Add-59-scsi-sg_utils.rules.patch 2014-04-11 14:40:41.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.dracut.new/0025-95udev-rules-Add-59-scsi-sg_utils.rules.patch 2014-06-18 07:52:34.000000000 +0200 @@ -1,4 +1,4 @@ -From 21705c28104c5c8153b6e992908cf999d4cf0983 Mon Sep 17 00:00:00 2001 +From fdd30d0b8d336c29489d8cd7b768e16e3c88c014 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Tue, 8 Apr 2014 09:51:14 +0200 Subject: [PATCH] 95udev-rules: Add 59-scsi-sg_utils.rules @@ -13,7 +13,7 @@ 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules.d/95udev-rules/module-setup.sh b/modules.d/95udev-rules/module-setup.sh -index f02b59e..d63066f 100755 +index 41985df..e5c0a7a 100755 --- a/modules.d/95udev-rules/module-setup.sh +++ b/modules.d/95udev-rules/module-setup.sh @@ -27,7 +27,8 @@ install() { @@ -27,5 +27,5 @@ 60-pcmcia.rules \ 50-udev.rules 95-late.rules \ -- -1.8.1.4 +1.8.4.5 ++++++ 0016-90multipath-add-67-kpartx-compat.rules.patch -> 0026-90multipath-add-67-kpartx-compat.rules.patch ++++++ ++++++ 0017-90multipath-install-dracut-specific-service-file.patch -> 0027-90multipath-install-dracut-specific-service-file.patch ++++++ --- /work/SRC/openSUSE:Factory/dracut/0017-90multipath-install-dracut-specific-service-file.patch 2014-04-11 14:40:41.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.dracut.new/0027-90multipath-install-dracut-specific-service-file.patch 2014-06-18 07:52:34.000000000 +0200 @@ -1,4 +1,4 @@ -From 985b280a49b90f0daa3e7b0a142099ae829efe12 Mon Sep 17 00:00:00 2001 +From db1065791dbcad5325e4c2732dc70d0334decc25 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Tue, 8 Apr 2014 10:04:41 +0200 Subject: [PATCH] 90multipath: install dracut-specific service file @@ -37,7 +37,7 @@ else diff --git a/modules.d/90multipath/multipathd.service b/modules.d/90multipath/multipathd.service new file mode 100644 -index 0000000..01e497c +index 0000000..e9318f5 --- /dev/null +++ b/modules.d/90multipath/multipathd.service @@ -0,0 +1,15 @@ @@ -46,7 +46,7 @@ +Before=iscsi.service iscsid.service lvm2-activation-early.service +DefaultDependencies=no +Conflicts=shutdown.target -+ ++ +[Service] +Type=forking +ExecStartPre=/sbin/modprobe dm-multipath @@ -57,5 +57,5 @@ +[Install] +WantedBy=sysinit.target -- -1.8.1.4 +1.8.4.5 ++++++ 0020-95udev-rules-Include-correct-sg3_utils-rules.patch -> 0028-95udev-rules-Include-correct-sg3_utils-rules.patch ++++++ --- /work/SRC/openSUSE:Factory/dracut/0020-95udev-rules-Include-correct-sg3_utils-rules.patch 2014-04-12 21:33:43.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.dracut.new/0028-95udev-rules-Include-correct-sg3_utils-rules.patch 2014-06-18 07:52:34.000000000 +0200 @@ -1,4 +1,4 @@ -From a292b9581c55173b1e55f1c24b186a5129034324 Mon Sep 17 00:00:00 2001 +From 6ae2f2f1d27ffde3bc70eeaa3334fda8f178adf7 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Fri, 11 Apr 2014 13:00:58 +0200 Subject: [PATCH] 95udev-rules: Include correct sg3_utils rules @@ -15,7 +15,7 @@ 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules.d/95udev-rules/module-setup.sh b/modules.d/95udev-rules/module-setup.sh -index d63066f..044dbd1 100755 +index e5c0a7a..059ad0d 100755 --- a/modules.d/95udev-rules/module-setup.sh +++ b/modules.d/95udev-rules/module-setup.sh @@ -27,7 +27,8 @@ install() { @@ -29,5 +29,5 @@ 61-persistent-storage-edd.rules 80-drivers.rules 95-udev-late.rules \ 60-pcmcia.rules \ -- -1.8.1.4 +1.8.4.5 ++++++ 0021-90multipath-install-correct-multipath-rules.patch -> 0029-90multipath-install-correct-multipath-rules.patch ++++++ ++++++ 0030-95iscsi-Autodetect-iSCSI-firmware.patch ++++++
From 096545d4d6a2c5bc142b4b924986307607d27469 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Mon, 5 May 2014 08:32:16 +0200 Subject: [PATCH] 95iscsi: Autodetect iSCSI firmware
Some iSCSI initiator present firmware information in /sys/firmware/ibft or /sys/firmware/iscsi_bootX Whenever we detect one of those directories we should assume that the iSCSI devices should be activated. Signed-off-by: Pavel Wieczorkiewicz <pwieczorkiewicz@suse.com> Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/95iscsi/module-setup.sh | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/modules.d/95iscsi/module-setup.sh b/modules.d/95iscsi/module-setup.sh index 1b0f292..97e6e81 100755 --- a/modules.d/95iscsi/module-setup.sh +++ b/modules.d/95iscsi/module-setup.sh @@ -39,6 +39,22 @@ depends() { installkernel() { local _arch=$(uname -m) + install_ibft() { + # When iBFT / iscsi_boot is detected: + # - mark network as mandatory + # - specify firmware booting cmdline parameter + + for d in /sys/firmware/* ; do + if [ -d ${d}/initiator ] ; then + echo "rd.neednet=1" >> "${initdir}/etc/cmdline.d/95iscsi.conf" + echo "rd.iscsi.firmware=1" >> "${initdir}/etc/cmdline.d/95iscsi.conf" + fi + done + } + + # Detect iBFT and perform mandatory steps + install_ibft + instmods bnx2i qla4xxx cxgb3i cxgb4i be2iscsi hostonly="" instmods iscsi_tcp iscsi_ibft crc32c iscsi_boot_sysfs iscsi_module_filter() { -- 1.8.4.5 ++++++ 0022-90multipath-Fixup-service-file-for-booting.patch -> 0031-90multipath-Fixup-service-file-for-booting.patch ++++++ --- /work/SRC/openSUSE:Factory/dracut/0022-90multipath-Fixup-service-file-for-booting.patch 2014-04-26 11:44:58.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.dracut.new/0031-90multipath-Fixup-service-file-for-booting.patch 2014-06-18 07:52:34.000000000 +0200 @@ -1,7 +1,7 @@ -From 10eda256afc1f1de0bffa26afdbdcf04394aeeeb Mon Sep 17 00:00:00 2001 +From 4a01af95296882e364499728329a1f5bff05cc93 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Wed, 16 Apr 2014 09:35:28 +0200 -Subject: 90multipath: Fixup service file for booting +Subject: [PATCH] 90multipath: Fixup service file for booting 'Type=forking' caused systemd to immediately terminate the entire process, and not creating any device maps. @@ -31,12 +31,12 @@ inst_hook pre-trigger 02 "$moddir/multipathd.sh" inst_hook cleanup 02 "$moddir/multipathd-stop.sh" diff --git a/modules.d/90multipath/multipathd.service b/modules.d/90multipath/multipathd.service -index 01e497c..50a0883 100644 +index e9318f5..44a7b80 100644 --- a/modules.d/90multipath/multipathd.service +++ b/modules.d/90multipath/multipathd.service @@ -5,9 +5,9 @@ DefaultDependencies=no Conflicts=shutdown.target - + [Service] -Type=forking +Type=simple @@ -47,5 +47,5 @@ ExecStop=/sbin/multipathd shutdown -- -1.8.1.4 +1.8.4.5 ++++++ 0023-mkinitrd-suse.sh-Use-hostonly-and-hostonly-cmdline-c.patch -> 0032-mkinitrd-suse.sh-Use-hostonly-and-hostonly-cmdline-c.patch ++++++ --- /work/SRC/openSUSE:Factory/dracut/0023-mkinitrd-suse.sh-Use-hostonly-and-hostonly-cmdline-c.patch 2014-05-10 08:32:28.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.dracut.new/0032-mkinitrd-suse.sh-Use-hostonly-and-hostonly-cmdline-c.patch 2014-06-18 07:52:34.000000000 +0200 @@ -1,7 +1,8 @@ -From c99348f3337fde44a98abf5946b7cbf36bce1b0e Mon Sep 17 00:00:00 2001 -From: Hannes Reinecke <hare@suse.de> +From 410700b1b3a4c0e6c092ce453d1f7ca5aaa8c6af Mon Sep 17 00:00:00 2001 +From: Thomas Renninger <trenn@suse.de> Date: Mon, 5 May 2014 08:38:44 +0200 -Subject: mkinitrd-suse.sh: Use '--hostonly' and '--hostonly-cmdline' correctly +Subject: [PATCH] mkinitrd-suse.sh: Use '--hostonly' and '--hostonly-cmdline' + correctly LVM and other systems might not be working properly as the --hostonly-cmdline flag has to be active by default. @@ -47,5 +48,5 @@ [[ $dracut_cmdline ]] && dracut_args="${dracut_args} --kernel-cmdline ${dracut_cmdline}" [ -z "$(type -p update-bootloader)" ] && skip_update_bootloader=1 -- -1.8.5.2 +1.8.4.5 ++++++ 0024-95iscsi-Set-correct-iscsi_started-value-for-iSCSI-fi.patch -> 0033-95iscsi-Set-correct-iscsi_started-value-for-iSCSI-fi.patch ++++++ --- /work/SRC/openSUSE:Factory/dracut/0024-95iscsi-Set-correct-iscsi_started-value-for-iSCSI-fi.patch 2014-05-10 08:32:28.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.dracut.new/0033-95iscsi-Set-correct-iscsi_started-value-for-iSCSI-fi.patch 2014-06-18 07:52:34.000000000 +0200 @@ -1,7 +1,7 @@ -From 2a30da782e48d953507ca793ab0bc7f78b37db9f Mon Sep 17 00:00:00 2001 +From 05c2671153524a3487a674fb8798556eaf8bdcaa Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Mon, 5 May 2014 08:48:35 +0200 -Subject: 95iscsi: Set correct iscsi_started value for iSCSI firmware +Subject: [PATCH] 95iscsi: Set correct iscsi_started value for iSCSI firmware When iSCSI firmware booting is selected we should not rely on 'netroot' or 'iscsiroot' variables to be set. @@ -14,10 +14,10 @@ 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/modules.d/95iscsi/parse-iscsiroot.sh b/modules.d/95iscsi/parse-iscsiroot.sh -index a965cc6..c1a47d2 100755 +index 4be9d56..9651a20 100755 --- a/modules.d/95iscsi/parse-iscsiroot.sh +++ b/modules.d/95iscsi/parse-iscsiroot.sh -@@ -98,8 +98,12 @@ if [ -n "$netroot" ] && [ "$root" != "/dev/root" ] && [ "$root" != "dhcp" ]; the +@@ -92,8 +92,12 @@ if [ -n "$netroot" ] && [ "$root" != "/dev/root" ] && [ "$root" != "dhcp" ]; the fi fi @@ -33,5 +33,5 @@ # Done, all good! rootok=1 -- -1.8.5.2 +1.8.4.5 ++++++ 0034-dracut-Do-not-stop-installing-drivers-if-one-fails.patch ++++++
From 08f0ec43bed63ccd72b1ea9d20c36d3fe1d91a2e Mon Sep 17 00:00:00 2001 From: Thomas Renninger <trenn@suse.de> Date: Tue, 27 May 2014 14:58:54 +0200 Subject: [PATCH] dracut: Do not stop installing drivers if one fails
--add-drivers and --filesystems kernel drivers are added via: instmods -c The check option makes the function return if one driver could not get installed without trying to install further drivers which is bad. The user is still informed ($_silent is by default no), but all modules passed to instmods are tried to be loaded, even if one fails. Signed-off-by: Thomas Renninger <trenn@suse.de> --- dracut-functions.sh | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/dracut-functions.sh b/dracut-functions.sh index ac22b7e..5b3b1fb 100755 --- a/dracut-functions.sh +++ b/dracut-functions.sh @@ -1689,18 +1689,16 @@ instmods() { if (($# == 0)); then # filenames from stdin while read _mod; do inst1mod "${_mod%.ko*}" || { - if [[ "$_check" == "yes" ]]; then - [[ "$_silent" == "no" ]] && dfatal "Failed to install module $_mod" - return 1 + if [[ "$_check" == "yes" ]] && [[ "$_silent" == "no" ]]; then + dfatal "Failed to install module $_mod" fi } done fi while (($# > 0)); do # filenames as arguments inst1mod ${1%.ko*} || { - if [[ "$_check" == "yes" ]]; then - [[ "$_silent" == "no" ]] && dfatal "Failed to install module $1" - return 1 + if [[ "$_check" == "yes" ]] && [[ "$_silent" == "no" ]]; then + dfatal "Failed to install module $1" fi } shift -- 1.8.4.5 ++++++ 0035-Introduce-force-drivers-parameter-and-force_drivers-.patch ++++++
From 35997a262493d31af8cd06a93612cf341df3f0cb Mon Sep 17 00:00:00 2001 From: Thomas Renninger <trenn@suse.de> Date: Tue, 27 May 2014 14:59:39 +0200 Subject: [PATCH] Introduce --force-drivers parameter and force_drivers=+ config option
Which will not only add listed drivers, but also enforce that they are tried to be loaded at early boot time. This is needed if drivers which are not autoloaded (e.g. loop and a lot others) shall get loaded via initramfs. Signed-off-by: Thomas Renninger <trenn@suse.de> --- dracut.8.asc | 13 +++++++++++++ dracut.sh | 21 +++++++++++++++++++++ 2 files changed, 34 insertions(+) diff --git a/dracut.8.asc b/dracut.8.asc index 14ce26b..5ff0e82 100644 --- a/dracut.8.asc +++ b/dracut.8.asc @@ -136,6 +136,19 @@ example: ---- =============================== +**--force-drivers** _<list of kernel modules>_:: + See add-drivers above. But in this case it is ensured that the drivers + are tried to be loaded early via modprobe. ++ +[NOTE] +=============================== +If [LIST] has multiple arguments, then you have to put these in quotes. For +example: +---- +# dracut --force-drivers "kmodule1 kmodule2" ... +---- +=============================== + **--omit-drivers** _<list of kernel modules>_:: specify a space-separated list of kernel modules not to add to the initramfs. diff --git a/dracut.sh b/dracut.sh index adf26ad..9898cdf 100755 --- a/dracut.sh +++ b/dracut.sh @@ -81,6 +81,10 @@ Creates initial ramdisk images for preloading modules exclusively include in the initramfs. --add-drivers [LIST] Specify a space-separated list of kernel modules to add to the initramfs. + --force-drivers [LIST] Specify a space-separated list of kernel + modules to add to the initramfs and make sure they + are tried to be loaded via modprobe same as passing + rd.driver.pre=DRIVER kernel parameter. --omit-drivers [LIST] Specify a space-separated list of kernel modules not to add to the initramfs. --filesystems [LIST] Specify a space-separated list of kernel filesystem @@ -299,6 +303,7 @@ rearrange_params() --long add: \ --long force-add: \ --long add-drivers: \ + --long force-drivers: \ --long omit-drivers: \ --long modules: \ --long omit: \ @@ -463,6 +468,7 @@ while :; do -a|--add) push add_dracutmodules_l "$2"; PARMS_TO_STORE+=" '$2'"; shift;; --force-add) push force_add_dracutmodules_l "$2"; PARMS_TO_STORE+=" '$2'"; shift;; --add-drivers) push add_drivers_l "$2"; PARMS_TO_STORE+=" '$2'"; shift;; + --force-drivers) push force_drivers_l "$2"; PARMS_TO_STORE+=" '$2'"; shift;; --omit-drivers) push omit_drivers_l "$2"; PARMS_TO_STORE+=" '$2'"; shift;; -m|--modules) push dracutmodules_l "$2"; PARMS_TO_STORE+=" '$2'"; shift;; -o|--omit) push omit_dracutmodules_l "$2"; PARMS_TO_STORE+=" '$2'"; shift;; @@ -887,6 +893,13 @@ if (( ${#add_drivers_l[@]} )); then fi add_drivers=${add_drivers/-/_} +if (( ${#force_drivers_l[@]} )); then + while pop force_drivers_l val; do + force_drivers+=" $val " + done +fi +force_drivers=${force_drivers/-/_} + if (( ${#omit_drivers_l[@]} )); then while pop omit_drivers_l val; do omit_drivers+=" $val " @@ -903,6 +916,7 @@ fi omit_drivers_corrected="" for d in $omit_drivers; do [[ " $drivers $add_drivers " == *\ $d\ * ]] && continue + [[ " $drivers $force_drivers " == *\ $d\ * ]] && continue omit_drivers_corrected+="$d|" done omit_drivers="${omit_drivers_corrected%|}" @@ -1295,6 +1309,13 @@ if [[ $no_kernel != yes ]]; then if [[ $add_drivers ]]; then hostonly='' instmods -c $add_drivers fi + if [[ $force_drivers ]]; then + hostonly='' instmods -c $force_drivers + rm -f $initdir/etc/cmdline.d/20-force_driver.conf + for mod in $force_drivers; do + echo "rd.driver.pre=$mod" >>$initdir/etc/cmdline.d/20-force_drivers.conf + done + fi if [[ $filesystems ]]; then hostonly='' instmods -c $filesystems fi -- 1.8.4.5 ++++++ 0027-95fcoe-Store-current-configuration-in-dracut-cmdline.patch -> 0036-95fcoe-Store-current-configuration-in-dracut-cmdline.patch ++++++ --- /work/SRC/openSUSE:Factory/dracut/0027-95fcoe-Store-current-configuration-in-dracut-cmdline.patch 2014-05-17 21:46:34.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.dracut.new/0036-95fcoe-Store-current-configuration-in-dracut-cmdline.patch 2014-06-18 07:52:34.000000000 +0200 @@ -1,7 +1,7 @@ -From 2e833b82a848b91b3fe186112e47dd288e39fbc0 Mon Sep 17 00:00:00 2001 +From 2a0e23ad75de80c7cc280b005e2cd5f4a67a31de Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Tue, 13 May 2014 09:05:38 +0200 -Subject: 95fcoe: Store current configuration in dracut cmdline +Subject: [PATCH] 95fcoe: Store current configuration in dracut cmdline When running with --hostonly-cmdline we should be storing the current configuration in /etc/cmdline.d so that dracut @@ -76,5 +76,5 @@ inst "$moddir/fcoe-edd.sh" "/sbin/fcoe-edd" inst "$moddir/fcoe-genrules.sh" "/sbin/fcoe-genrules.sh" -- -1.8.5.2 +1.8.4.5 ++++++ 0028-95fcoe-update-fcoe-interface-check.patch -> 0037-95fcoe-update-fcoe-interface-check.patch ++++++ --- /work/SRC/openSUSE:Factory/dracut/0028-95fcoe-update-fcoe-interface-check.patch 2014-05-17 21:46:34.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.dracut.new/0037-95fcoe-update-fcoe-interface-check.patch 2014-06-18 07:52:34.000000000 +0200 @@ -1,7 +1,7 @@ -From d0548034aab7e57778ee649e555d576810019cb8 Mon Sep 17 00:00:00 2001 +From d2b5184bf73bbce848fb3aca10ac7e33f6b65a27 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Tue, 13 May 2014 11:01:29 +0200 -Subject: 95fcoe: update fcoe interface check +Subject: [PATCH] 95fcoe: update fcoe interface check The 'create' sysfs entry has been removed for newer fcoe modules, so just check if the module directory exists. @@ -34,5 +34,5 @@ local IFS=: set $fcoe -- -1.8.5.2 +1.8.4.5 ++++++ 0029-95fcoe-start-lldpad-separately.patch -> 0038-95fcoe-start-lldpad-separately.patch ++++++ --- /work/SRC/openSUSE:Factory/dracut/0029-95fcoe-start-lldpad-separately.patch 2014-05-17 21:46:34.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.dracut.new/0038-95fcoe-start-lldpad-separately.patch 2014-06-18 07:52:34.000000000 +0200 @@ -1,7 +1,7 @@ -From f7c7657cafc12cf9ab03c6ff84c05b09c8f9bdd1 Mon Sep 17 00:00:00 2001 +From e4c44afc0f05514f2eed4efaea76d7b9bc239493 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Wed, 14 May 2014 08:04:22 +0200 -Subject: 95fcoe: start lldpad separately +Subject: [PATCH] 95fcoe: start lldpad separately lldpad is a system-wide process, which must be started only once. So we should be separate it from fcoe-up, as it might be called @@ -10,16 +10,16 @@ Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/95fcoe/fcoe-up.sh | 8 -------- - modules.d/95fcoe/lldpad.sh | 15 +++++++++++++++ + modules.d/95fcoe/lldpad.sh | 14 ++++++++++++++ modules.d/95fcoe/module-setup.sh | 1 + - 3 files changed, 16 insertions(+), 8 deletions(-) + 3 files changed, 15 insertions(+), 8 deletions(-) create mode 100644 modules.d/95fcoe/lldpad.sh -Index: dracut-037/modules.d/95fcoe/fcoe-up.sh -=================================================================== ---- dracut-037.orig/modules.d/95fcoe/fcoe-up.sh -+++ dracut-037/modules.d/95fcoe/fcoe-up.sh -@@ -24,10 +24,6 @@ netdriver=$(readlink -f /sys/class/net/$ +diff --git a/modules.d/95fcoe/fcoe-up.sh b/modules.d/95fcoe/fcoe-up.sh +index d8c73c8..9884713 100755 +--- a/modules.d/95fcoe/fcoe-up.sh ++++ b/modules.d/95fcoe/fcoe-up.sh +@@ -24,10 +24,6 @@ netdriver=$(readlink -f /sys/class/net/$netif/device/driver) netdriver=${netdriver##*/} if [ "$dcb" = "dcb" ]; then @@ -41,11 +41,12 @@ while [ $i -lt 60 ]; do dcbtool sc "$netif" dcb on && break info "Retrying to turn dcb on" -Index: dracut-037/modules.d/95fcoe/lldpad.sh -=================================================================== +diff --git a/modules.d/95fcoe/lldpad.sh b/modules.d/95fcoe/lldpad.sh +new file mode 100644 +index 0000000..d06a3bd --- /dev/null -+++ dracut-037/modules.d/95fcoe/lldpad.sh -@@ -0,0 +1,15 @@ ++++ b/modules.d/95fcoe/lldpad.sh +@@ -0,0 +1,14 @@ +#!/bin/bash + +# Note lldpad will stay running after switchroot, the system initscripts @@ -60,11 +61,10 @@ + sleep 1 + i=$(($i+1)) +done -+ -Index: dracut-037/modules.d/95fcoe/module-setup.sh -=================================================================== ---- dracut-037.orig/modules.d/95fcoe/module-setup.sh -+++ dracut-037/modules.d/95fcoe/module-setup.sh +diff --git a/modules.d/95fcoe/module-setup.sh b/modules.d/95fcoe/module-setup.sh +index ef4a38f..9af8c71 100755 +--- a/modules.d/95fcoe/module-setup.sh ++++ b/modules.d/95fcoe/module-setup.sh @@ -71,6 +71,7 @@ install() { inst "$moddir/fcoe-up.sh" "/sbin/fcoe-up" inst "$moddir/fcoe-edd.sh" "/sbin/fcoe-edd" @@ -73,48 +73,6 @@ inst_hook cmdline 99 "$moddir/parse-fcoe.sh" dracut_need_initqueue } -Index: dracut-037/mkinitrd-suse.8.asc -=================================================================== ---- dracut-037.orig/mkinitrd-suse.8.asc -+++ dracut-037/mkinitrd-suse.8.asc -@@ -61,11 +61,6 @@ OPTIONS - **-I** _<interface>:: - Configure the specified interface statically. - --**-a** _<acpi_dsdt>:: -- Attach compiled ACPI DSDT (Differentiated System Description Table) -- to initrd. This replaces the DSDT of the BIOS. Defaults to the -- _ACPI_DSDT_ variable in */etc/sysconfig/kernel*. -- - **-M** _<map>:: - System.map file to use. - -@@ -87,9 +82,6 @@ OPTIONS - Disable logging to _/var/log/YaST2/mkinitrd.log_. This is useful for - testing if you don’t want to clutter the system log. - --**--force**:: -- overwrite existing initramfs file. -- - **--help**:: - print a help message and exit. - -Index: dracut-037/mkinitrd-suse.8 -=================================================================== ---- dracut-037.orig/mkinitrd-suse.8 -+++ dracut-037/mkinitrd-suse.8 -@@ -117,14 +117,6 @@ Run dhcp on the specified interface (for - Configure the specified interface statically\&. - .RE - .PP --\fB\-a\fR\ \&_<acpi_dsdt> --.RS 4 --Attach compiled ACPI DSDT (Differentiated System Description Table) to initrd\&. This replaces the DSDT of the BIOS\&. Defaults to the --\fIACPI_DSDT\fR --variable in --\fB/etc/sysconfig/kernel\fR\&. --.RE --.PP - \fB\-M\fR\ \&_<map> - .RS 4 - System\&.map file to use\&. +-- +1.8.4.5 + ++++++ 0039-Remove-force-parameter-from-mkinitrd.patch ++++++
From ee275da9883bb5a3f10191f6a034d90dd6ba5770 Mon Sep 17 00:00:00 2001 From: Thomas Renninger <trenn@suse.de> Date: Tue, 27 May 2014 15:03:46 +0200 Subject: [PATCH] Remove --force parameter from mkinitrd
When calling 'mkinitrd' we're setting the '--force' parameter to dracut anyway, so it doesn't make any sense to have it as a separate parameter. Signed-off-by: Thomas Renninger <trenn@suse.de> --- mkinitrd-suse.8.asc | 3 --- mkinitrd-suse.sh | 9 ++------- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/mkinitrd-suse.8.asc b/mkinitrd-suse.8.asc index a181b75..cdb8e3a 100644 --- a/mkinitrd-suse.8.asc +++ b/mkinitrd-suse.8.asc @@ -87,9 +87,6 @@ OPTIONS Disable logging to _/var/log/YaST2/mkinitrd.log_. This is useful for testing if you don’t want to clutter the system log. -**--force**:: - overwrite existing initramfs file. - **--help**:: print a help message and exit. diff --git a/mkinitrd-suse.sh b/mkinitrd-suse.sh index c02062d..7fc787e 100755 --- a/mkinitrd-suse.sh +++ b/mkinitrd-suse.sh @@ -23,7 +23,6 @@ boot_dir="/boot" quiet=0 host_only=1 -force=0 logfile=/var/log/YaST2/mkinitrd.log dracut_cmd=dracut @@ -203,8 +202,6 @@ default_kernel_images() { for initrd_image in $initrd_images;do targets="$targets $initrd_image" done - host_only=1 - force=1 } while (($# > 0)); do @@ -217,8 +214,6 @@ while (($# > 0)); do for kernel_image in $kernel_images;do kernels="$kernels ${kernel_image#*-}" done - host_only=1 - force=1 ;; -i) read_arg initrd_images "$@" || shift $? for initrd_image in $initrd_images;do @@ -274,7 +269,6 @@ while (($# > 0)); do --version|-R) echo "mkinitrd: dracut compatibility wrapper" exit 0;; - --force) force=1;; --quiet|-q) quiet=1;; *) if [[ ! $targets ]]; then targets=$1 @@ -302,7 +296,8 @@ if [[ $host_only == 1 ]];then else dracut_args="${dracut_args} --no-hostonly --no-hostonly-cmdline" fi -[[ $force == 1 ]] && dracut_args="${dracut_args} --force" +dracut_args="${dracut_args} --force" + [[ $dracut_cmdline ]] && dracut_args="${dracut_args} --kernel-cmdline ${dracut_cmdline}" [ -z "$(type -p update-bootloader)" ] && skip_update_bootloader=1 -- 1.8.4.5 ++++++ 0031-95fcoe-skip-VLAN-devices-in-fcoe-up.patch -> 0040-95fcoe-skip-VLAN-devices-in-fcoe-up.patch ++++++ ++++++ 0041-mkinitd-suse-remove-hostonly-and-hostonly-cmdline.patch ++++++
From c736a3871f583c60f21215a5e69026e8f0bd6bff Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Mon, 2 Jun 2014 14:36:48 +0200 Subject: [PATCH] mkinitd-suse: remove --hostonly and --hostonly-cmdline
Should be set via configuration files, not in the script itself. Signed-off-by: Thomas Renninger <trenn@suse.de> --- mkinitrd-suse.sh | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/mkinitrd-suse.sh b/mkinitrd-suse.sh index 7fc787e..1750b62 100755 --- a/mkinitrd-suse.sh +++ b/mkinitrd-suse.sh @@ -22,7 +22,6 @@ boot_dir="/boot" quiet=0 -host_only=1 logfile=/var/log/YaST2/mkinitrd.log dracut_cmd=dracut @@ -255,7 +254,7 @@ while (($# > 0)); do dracut_cmdline="${dracut_cmdline} ip=$(ipconfig $static_if)": ;; -a) read_arg acpi_dsdt "$@" || shift $? - echo "mkinitrd: custom DSDT not yet supported" + echo "Obsolete -a param, use acpi_table_dir= and acpi_override= variables in /etc/dracut.conf.d/" exit 1 ;; -s) read_arg boot_splash "$@" || shift $? @@ -291,11 +290,6 @@ targets=( $targets ) [[ $kernels ]] && kernels=( $kernels ) [[ $logfile ]] && dracut_args="${dracut_args} --logfile $logfile" -if [[ $host_only == 1 ]];then - dracut_args="${dracut_args} --hostonly --hostonly-cmdline" -else - dracut_args="${dracut_args} --no-hostonly --no-hostonly-cmdline" -fi dracut_args="${dracut_args} --force" [[ $dracut_cmdline ]] && dracut_args="${dracut_args} --kernel-cmdline ${dracut_cmdline}" @@ -309,7 +303,6 @@ fi [[ $domu_module_list ]] || domu_module_list="${DOMU_INITRD_MODULES}" shopt -s extglob -echo "Creating: target|kernel|dracut args " for ((i=0 ; $i<${#targets[@]} ; i++)); do if [[ $img_vers ]];then @@ -329,20 +322,21 @@ for ((i=0 ; $i<${#targets[@]} ; i++)); do modules_all=${modules_all%%+([[:space:]])} modules_all=${modules_all##+([[:space:]])} + echo "Creating initrd: $target" + # Duplicate code: No way found how to redirect output based on $quiet if [[ $quiet == 1 ]];then - echo "$target|$kernel|$dracut_args_all" - # Duplicate code: --add-drivers must not be called with empty string + # Duplicate code: --force-drivers must not be called with empty string # -> dracut bug workarounded ugly, because of complex whitespace # expansion magics if [ -n "${modules_all}" ];then - $dracut_cmd $dracut_args --add-drivers "${modules_all}" "$target" "$kernel" &>/dev/null + $dracut_cmd $dracut_args --force-drivers "${modules_all}" "$target" "$kernel" &>/dev/null else $dracut_cmd $dracut_args "$target" "$kernel" &>/dev/null fi else if [ -n "${modules_all}" ];then - $dracut_cmd $dracut_args --add-drivers "${modules_all}" "$target" "$kernel" + $dracut_cmd $dracut_args --force-drivers "${modules_all}" "$target" "$kernel" else $dracut_cmd $dracut_args "$target" "$kernel" fi -- 1.8.4.5 ++++++ 0042-Enhance-suse.conf-example-with-SUSE-specific-setting.patch ++++++
From a2fb3509fc14d1ce2689878b6e63756a39531dc5 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Mon, 2 Jun 2014 14:39:55 +0200 Subject: [PATCH] Enhance suse.conf example with SUSE-specific settings
SUSE is using specific settings for dracut, so add them to the suse.conf.example file. Signed-off-by: Thomas Renninger <trenn@suse.de> --- dracut.conf.d/suse.conf.example | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/dracut.conf.d/suse.conf.example b/dracut.conf.d/suse.conf.example index 1e7f80e..818b59f 100644 --- a/dracut.conf.d/suse.conf.example +++ b/dracut.conf.d/suse.conf.example @@ -1,3 +1,14 @@ +# SUSE specifc dracut settings +# +# SUSE by default always builds a as small as possible initrd for performance +# and resource reasons. +# If you like to build a generic initrd which works on other platforms than +# on the one dracut/mkinitrd got called comment out below setting(s). +hostonly="yes" +hostonly_cmdline="yes" + +compress="pixz -6" + i18n_vars="/etc/sysconfig/language:RC_LANG-LANG,RC_LC_ALL-LC_ALL /etc/sysconfig/console:CONSOLE_UNICODEMAP-FONT_UNIMAP,CONSOLE_FONT-FONT,CONSOLE_SCREENMAP-FONT_MAP /etc/sysconfig/keyboard:KEYTABLE-KEYMAP" omit_drivers+=" i2o_scsi" -- 1.8.4.5 ++++++ 0043-40network-always-add-network-module.patch ++++++
From 1bfb0415eaee805fc5b5685f5e291904f4d5effa Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Mon, 2 Jun 2014 14:41:43 +0200 Subject: [PATCH] 40network: always add network module
Signed-off-by: Thomas Renninger <trenn@suse.de> --- modules.d/40network/module-setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules.d/40network/module-setup.sh b/modules.d/40network/module-setup.sh index b54f873..5d3c26e 100755 --- a/modules.d/40network/module-setup.sh +++ b/modules.d/40network/module-setup.sh @@ -11,7 +11,7 @@ check() { require_binaries ip arping $WICKEDD_DHCP_PATH/wickedd-dhcp4 $WICKEDD_DHCP_PATH/wickedd-dhcp6 || return 1 - return 255 + return 0 } # called by dracut -- 1.8.4.5 ++++++ 0044-Add-find-to-debug-binaries.patch ++++++
From 753046ce937389b99431870c531dcc862323d660 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Mon, 2 Jun 2014 14:43:16 +0200 Subject: [PATCH] Add 'find' to debug binaries
Signed-off-by: Thomas Renninger <trenn@suse.de> --- modules.d/95debug/module-setup.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/modules.d/95debug/module-setup.sh b/modules.d/95debug/module-setup.sh index 88de833..1891fa8 100755 --- a/modules.d/95debug/module-setup.sh +++ b/modules.d/95debug/module-setup.sh @@ -16,8 +16,7 @@ depends() { # called by dracut install() { inst_multiple -o ps grep more cat rm strace free showmount \ - ping netstat rpcinfo vi scp ping6 ssh \ + ping netstat rpcinfo vi scp ping6 ssh find \ fsck fsck.ext2 fsck.ext4 fsck.ext3 fsck.ext4dev fsck.vfat e2fsck - } -- 1.8.4.5 ++++++ 0045-40network-add-missing-_arch-variable-declaration.patch ++++++
From f15b93bd58f157a4c8f3aa5fe5a03ee0494f262c Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Mon, 2 Jun 2014 14:44:05 +0200 Subject: [PATCH] 40network: add missing _arch variable declaration
The module_setup.sh script was missing an '_arch' declaration, causing network not to be installed on s390. Signed-off-by: Thomas Renninger <trenn@suse.de> --- modules.d/40network/module-setup.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/modules.d/40network/module-setup.sh b/modules.d/40network/module-setup.sh index 5d3c26e..7e7f087 100755 --- a/modules.d/40network/module-setup.sh +++ b/modules.d/40network/module-setup.sh @@ -22,6 +22,7 @@ depends() { # called by dracut installkernel() { # Include wired net drivers, excluding wireless + local _arch=$(uname -m) net_module_filter() { local _net_drivers='eth_type_trans|register_virtio_device|usbnet_open' -- 1.8.4.5 ++++++ 0046-dracut-Do-not-wait-for-swap-device.patch ++++++
From 6ecab258710d158a7a628f699449ac1c2c918208 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Mon, 2 Jun 2014 14:45:36 +0200 Subject: [PATCH] dracut: Do not wait for swap device
There should be no difference between hostonly and non-hostonly mode; systemd should take care of bringing up the swap device whenever it's accessible. Signed-off-by: Thomas Renninger <trenn@suse.de> --- dracut.sh | 31 ------------------------------- 1 file changed, 31 deletions(-) diff --git a/dracut.sh b/dracut.sh index 9898cdf..79a6840 100755 --- a/dracut.sh +++ b/dracut.sh @@ -1044,37 +1044,6 @@ if [[ $hostonly ]]; then push host_devs "$_dev" done - if [[ -f /proc/swaps ]] && [[ -f /etc/fstab ]]; then - while read dev type rest; do - [[ -b $dev ]] || continue - [[ "$type" == "partition" ]] || continue - - while read _d _m _t _o _r; do - [[ "$_d" == \#* ]] && continue - [[ $_d ]] || continue - [[ $_t != "swap" ]] && continue - [[ $_m != "swap" ]] && [[ $_m != "none" ]] && continue - [[ "$_o" == *noauto* ]] && continue - _d=$(expand_persistent_dev "$_d") - [[ "$_d" -ef "$dev" ]] || continue - - if [[ -f /etc/crypttab ]]; then - while read _mapper _a _p _o; do - [[ $_mapper = \#* ]] && continue - [[ "$_d" -ef /dev/mapper/"$_mapper" ]] || continue - [[ "$_o" ]] || _o="$_p" - # skip entries with password files - [[ "$_p" == /* ]] && [[ -f $_p ]] && continue 2 - # skip mkswap swap - [[ $_o == *swap* ]] && continue 2 - done < /etc/crypttab - fi - - push host_devs "$(readlink -f "$dev")" - break - done < /etc/fstab - done < /proc/swaps - fi # record all host modaliases declare -A host_modalias find /sys/devices/ -name uevent -print > "$initdir/.modalias" -- 1.8.4.5 ++++++ 0047-95resume-skip-module-for-s390-x.patch ++++++
From e7d92a233044614bc6eed412abd05dc99432a455 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Mon, 2 Jun 2014 14:46:55 +0200 Subject: [PATCH] 95resume: skip module for s390(x)
s390(x) kernels do not support suspend, so there is no need to include this module. Signed-off-by: Thomas Renninger <trenn@suse.de> --- modules.d/95resume/module-setup.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules.d/95resume/module-setup.sh b/modules.d/95resume/module-setup.sh index b1b4684..7f3cf24 100755 --- a/modules.d/95resume/module-setup.sh +++ b/modules.d/95resume/module-setup.sh @@ -4,6 +4,10 @@ # called by dracut check() { + local _arch=$(uname -m) + # No suspend support on s390(x) + [ "$_arch" = "s390" -o "$_arch" = "s390x" ] && return 1 + # No point trying to support resume, if no swap partition exist [[ $hostonly ]] || [[ $mount_needs ]] && { for fs in "${host_fs_types[@]}"; do -- 1.8.4.5 ++++++ 0048-40network-Only-enable-network-interfaces-if-explicit.patch ++++++
From baf3a57c1fc8d2641c075e2dcdda44f5b26747dc Mon Sep 17 00:00:00 2001 From: Pawel Wieczorkiewicz <pwieczorkiewicz@suse.de> Date: Tue, 27 May 2014 11:48:43 +0200 Subject: [PATCH] 40network: Only enable network interfaces if explicitly requested
Currently all available network interfaces are started whenever 40network is pulled in. This causes massive delays during bootup. This patch modifies the behaviour to start interfaces only if rd.neednet is specified. References: bnc#879038 Signed-off-by: Pawel Wieczorkiewicz <pwieczorkiewicz@suse.de> --- modules.d/40network/net-genrules.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules.d/40network/net-genrules.sh b/modules.d/40network/net-genrules.sh index 6ec9239..2fd8c6b 100755 --- a/modules.d/40network/net-genrules.sh +++ b/modules.d/40network/net-genrules.sh @@ -97,8 +97,8 @@ command -v fix_bootif >/dev/null || . /lib/net-lib.sh else cond='ACTION=="add", SUBSYSTEM=="net"' # if you change the name of "91-default-net.rules", also change modules.d/80cms/cmssetup.sh - echo "$cond, $runcmd" > /etc/udev/rules.d/91-default-net.rules if [ "$NEEDNET" = "1" ]; then + echo "$cond, $runcmd" > /etc/udev/rules.d/91-default-net.rules echo "[ -f /tmp/net.*.did-setup ]" >$hookdir/initqueue/finished/wait-network.sh fi fi -- 1.8.4.5 ++++++ 0049-95iscsi-Use-ip-ibft-for-ibft-autoconfiguration.patch ++++++
From a857924cc5eaf57b1f8c6ae469fefa4ee03cf6cf Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Tue, 27 May 2014 12:07:35 +0200 Subject: [PATCH] 95iscsi: Use 'ip=ibft' for ibft autoconfiguration
For iBFT autoconfiguration we should be setting 'ip=ibft' instead of rd.neednet. This should instruct dracut to only enable the iBFT interfaces and leave the rest alone. References: bnc#879038 Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/95iscsi/module-setup.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/modules.d/95iscsi/module-setup.sh b/modules.d/95iscsi/module-setup.sh index 97e6e81..634c72e 100755 --- a/modules.d/95iscsi/module-setup.sh +++ b/modules.d/95iscsi/module-setup.sh @@ -41,12 +41,14 @@ installkernel() { install_ibft() { # When iBFT / iscsi_boot is detected: - # - mark network as mandatory + # - Use 'ip=ibft' to set up iBFT network interface # - specify firmware booting cmdline parameter for d in /sys/firmware/* ; do if [ -d ${d}/initiator ] ; then - echo "rd.neednet=1" >> "${initdir}/etc/cmdline.d/95iscsi.conf" + if [ ${d##*/} = "ibft" ] ; then + echo "ip=ibft" >> "${initdir}/etc/cmdline.d/95iscsi.conf" + fi echo "rd.iscsi.firmware=1" >> "${initdir}/etc/cmdline.d/95iscsi.conf" fi done -- 1.8.4.5 ++++++ 0050-95iscsi-strip-one-set-of-quotes-when-calling-initque.patch ++++++
From 55817d44cd85733072d61e20ed6c790f8252b00f Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Tue, 27 May 2014 13:30:17 +0200 Subject: [PATCH] 95iscsi: strip one set of quotes when calling initqueue
initqueue will process the arguments, assuming the first non-option argument to be the program to be executed. Putting the entire commandline into this argument confuses both, initqueue and the program in question. References: bnc#879038 Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/95iscsi/parse-iscsiroot.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/modules.d/95iscsi/parse-iscsiroot.sh b/modules.d/95iscsi/parse-iscsiroot.sh index 9651a20..3a572f7 100755 --- a/modules.d/95iscsi/parse-iscsiroot.sh +++ b/modules.d/95iscsi/parse-iscsiroot.sh @@ -61,10 +61,10 @@ fi # iscsi_firmware does not need argument checking if [ -n "$iscsi_firmware" ] ; then - netroot=${netroot:-iscsi:} + [ -z "$netroot" ] && netroot=iscsi: modprobe -q iscsi_boot_sysfs 2>/dev/null modprobe -q iscsi_ibft - initqueue --onetime --timeout "/sbin/iscsiroot dummy '$netroot' '$NEWROOT'" + initqueue --onetime --timeout /sbin/iscsiroot dummy "$netroot" "$NEWROOT" fi # If it's not iscsi we don't continue @@ -88,7 +88,7 @@ fi if [ -n "$netroot" ] && [ "$root" != "/dev/root" ] && [ "$root" != "dhcp" ]; then if ! getargbool 1 rd.neednet >/dev/null || ! getarg "ip="; then - initqueue --onetime --settled "/sbin/iscsiroot dummy '$netroot' '$NEWROOT'" + initqueue --onetime --settled /sbin/iscsiroot dummy "$netroot" "$NEWROOT" fi fi -- 1.8.4.5 ++++++ 0051-mkinitrd-suse-add-update-bootloader-message.patch ++++++
From 9a27c641994d83947057a7dc4dcf8886c0764091 Mon Sep 17 00:00:00 2001 From: Thomas Renninger <trenn@suse.de> Date: Mon, 2 Jun 2014 14:50:14 +0200 Subject: [PATCH] mkinitrd-suse: add 'update bootloader' message
Signed-off-by: Thomas Renninger <trenn@suse.de> --- mkinitrd-suse.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/mkinitrd-suse.sh b/mkinitrd-suse.sh index 1750b62..bf10a9d 100755 --- a/mkinitrd-suse.sh +++ b/mkinitrd-suse.sh @@ -346,5 +346,6 @@ done if [ "$skip_update_bootloader" ] ; then echo 2>&1 "Did not refresh the bootloader. You might need to refresh it manually." else + echo "Update bootloader..." update-bootloader --refresh fi -- 1.8.4.5 ++++++ 0052-99base-Add-chown-binary.patch ++++++
From fad493626ae0d6118d4efc164151d4fe8937682b Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Mon, 2 Jun 2014 14:52:23 +0200 Subject: [PATCH] 99base: Add chown binary
nvidia driver needs this via modprobe script. Needs to do change the group after a device node got created. Add chown instead of chgrp which can also change the owner of a file. Ask Stefand Dirsch <sndirsch@suse.de> for details. Signed-off-by: Thomas Renninger <trenn@suse.de> --- modules.d/99base/module-setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules.d/99base/module-setup.sh b/modules.d/99base/module-setup.sh index 13fbee2..359db22 100755 --- a/modules.d/99base/module-setup.sh +++ b/modules.d/99base/module-setup.sh @@ -17,7 +17,7 @@ depends() { install() { local _d - inst_multiple mount mknod mkdir sleep chroot \ + inst_multiple mount mknod mkdir sleep chroot chown \ sed ls flock cp mv dmesg rm ln rmmod mkfifo umount readlink setsid inst $(command -v modprobe) /sbin/modprobe -- 1.8.4.5 ++++++ 0053-01fips-fixup-loading-issues.patch ++++++
From c0fd9c31e9044b99edb850c4af229887b616e828 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Mon, 2 Jun 2014 15:02:04 +0200 Subject: [PATCH] 01fips: fixup loading issues
Adjust the FIPS module list to avoid loading issues References: bnc#875855 Signed-off-by: Marcus Meissner <meissner@suse.de> --- modules.d/01fips/fips.sh | 12 ++++++++++++ modules.d/01fips/module-setup.sh | 12 +++++++++--- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/modules.d/01fips/fips.sh b/modules.d/01fips/fips.sh index 7fa48f1..07bd1da 100755 --- a/modules.d/01fips/fips.sh +++ b/modules.d/01fips/fips.sh @@ -100,6 +100,18 @@ do_fips() _found=1 break done </proc/crypto + # If we find some hardware specific modules and cannot load them + # it is not a problem, proceed. + if [ "$_found" = "0" ]; then + if [ "$_module" != "${_module%-intel}" \ + -o "$_module" != "${_module%-ssse3}" \ + -o "$_module" != "${_module%-x86_64}" \ + -o "$_module" != "${_module%z90}" \ + ]; then + _found=1 + fi + fi + [ "$_found" = "0" ] && return 1 fi fi diff --git a/modules.d/01fips/module-setup.sh b/modules.d/01fips/module-setup.sh index a4081dc..aa56fcf 100755 --- a/modules.d/01fips/module-setup.sh +++ b/modules.d/01fips/module-setup.sh @@ -18,8 +18,12 @@ installkernel() { _fipsmodules="aead aes_generic aes-x86_64 ansi_cprng arc4 blowfish camellia cast6 cbc ccm " _fipsmodules+="chainiv crc32c crct10dif_generic cryptomgr crypto_null ctr cts deflate des des3_ede dm-crypt dm-mod " _fipsmodules+="ecb eseqiv fcrypt gcm ghash_generic hmac khazad lzo md4 md5 michael_mic rmd128 " - _fipsmodules+="rmd160 rmd256 rmd320 rot13 salsa20 seed seqiv serpent sha1 sha224 sha256 sha256_generic " - _fipsmodules+="sha384 sha512 sha512_generic tcrypt tea tnepres twofish wp256 wp384 wp512 xeta xtea xts zlib" + _fipsmodules+="rmd160 rmd256 rmd320 salsa20 seed seqiv serpent sha1 sha224 sha256 sha256_generic " + _fipsmodules+="sha384 sha512 sha512_generic tcrypt tea tnepres twofish wp256 wp384 wp512 xeta xtea xts zlib " + _fipsmodules+="sha512-ssse3 sha1-ssse3 sha256-ssse3 " + _fipsmodules+="ghash-clmulni-intel " + + # once it is in the kernel: _fipsmodules+="drbg " mkdir -m 0755 -p "${initdir}/etc/modprobe.d" @@ -44,7 +48,9 @@ install() { libsoftokn3.chk libfreebl3.so libfreebl3.chk \ libssl.so 'hmaccalc/sha512hmac.hmac' libssl.so.10 - inst_multiple -o prelink + # we do not use prelink at SUSE + #inst_multiple -o prelink + inst_simple /etc/system-fips } -- 1.8.4.5 ++++++ 0054-95iscsi-update-commandline-printing.patch ++++++
From b4d9257babaea468c8ea8510350c30df509e2184 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Fri, 30 May 2014 10:34:03 +0200 Subject: [PATCH] 95iscsi: update commandline printing
dracut has a separate callout 'cmdline' which should be used for printing out the generated commandline. Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/95iscsi/module-setup.sh | 40 +++++++++++++++++++++++---------------- 1 file changed, 24 insertions(+), 16 deletions(-) diff --git a/modules.d/95iscsi/module-setup.sh b/modules.d/95iscsi/module-setup.sh index 634c72e..52fac5c 100755 --- a/modules.d/95iscsi/module-setup.sh +++ b/modules.d/95iscsi/module-setup.sh @@ -2,6 +2,21 @@ # -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- # ex: ts=8 sw=4 sts=4 et filetype=sh +install_ibft() { + # When iBFT / iscsi_boot is detected: + # - Use 'ip=ibft' to set up iBFT network interface + # - specify firmware booting cmdline parameter + + for d in /sys/firmware/* ; do + if [ -d ${d}/initiator ] ; then + if [ ${d##*/} = "ibft" ] ; then + echo -n "ip=ibft " + fi + echo -n "rd.iscsi.firmware=1" + fi + done +} + # called by dracut check() { local _rootdev @@ -39,23 +54,11 @@ depends() { installkernel() { local _arch=$(uname -m) - install_ibft() { - # When iBFT / iscsi_boot is detected: - # - Use 'ip=ibft' to set up iBFT network interface - # - specify firmware booting cmdline parameter - - for d in /sys/firmware/* ; do - if [ -d ${d}/initiator ] ; then - if [ ${d##*/} = "ibft" ] ; then - echo "ip=ibft" >> "${initdir}/etc/cmdline.d/95iscsi.conf" - fi - echo "rd.iscsi.firmware=1" >> "${initdir}/etc/cmdline.d/95iscsi.conf" - fi - done - } - # Detect iBFT and perform mandatory steps - install_ibft + if [[ $hostonly_cmdline == "yes" ]] ; then + install_ibft > "${initdir}/etc/cmdline.d/95iscsi.conf" + echo >> "${initdir}/etc/cmdline.d/95iscsi.conf" + fi instmods bnx2i qla4xxx cxgb3i cxgb4i be2iscsi hostonly="" instmods iscsi_tcp iscsi_ibft crc32c iscsi_boot_sysfs @@ -97,6 +100,11 @@ installkernel() { } # called by dracut +cmdline() { + install_ibft +} + +# called by dracut install() { inst_multiple umount iscsistart hostname iscsi-iname inst_multiple -o iscsiuio -- 1.8.4.5 ++++++ 0055-95fcoe-Only-install-fcoe-module-if-required.patch ++++++
From bdf48e8e59056ccd44b3df2f53d298a74cabfab7 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Fri, 30 May 2014 11:00:59 +0200 Subject: [PATCH] 95fcoe: Only install fcoe module if required
When called with '--hostonly' we need to check if any FCoE controllers are present. Otherwise we don't need to include the module. Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/95fcoe/module-setup.sh | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/modules.d/95fcoe/module-setup.sh b/modules.d/95fcoe/module-setup.sh index 9af8c71..7abfb01 100755 --- a/modules.d/95fcoe/module-setup.sh +++ b/modules.d/95fcoe/module-setup.sh @@ -43,7 +43,16 @@ cmdline() { # called by dracut check() { + [[ $hostonly ]] || [[ $mount_needs ]] && { + for c in /sys/bus/fcoe/devices/ctlr_* ; do + [ -L $c ] || continue + break; + done + return 255 + } + require_binaries dcbtool fipvlan lldpad ip readlink || return 1 + return 0 } -- 1.8.4.5 ++++++ 0056-81cio_ignore-handle-cio_ignore-commandline.patch ++++++
From 3e263f6bfa21d9b5b102dfa73d0bdf2c17de41dc Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Wed, 4 Jun 2014 13:27:41 +0200 Subject: [PATCH] 81cio_ignore: handle cio_ignore commandline
References: bnc#874902 Signed-off-by: Thomas Renninger <trenn@suse.de> --- modules.d/81cio_ignore/module-setup.sh | 39 ++++++++++++++++++++++++++++++++++ modules.d/81cio_ignore/parse-zipl.sh | 29 +++++++++++++++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 modules.d/81cio_ignore/module-setup.sh create mode 100644 modules.d/81cio_ignore/parse-zipl.sh diff --git a/modules.d/81cio_ignore/module-setup.sh b/modules.d/81cio_ignore/module-setup.sh new file mode 100644 index 0000000..a812649 --- /dev/null +++ b/modules.d/81cio_ignore/module-setup.sh @@ -0,0 +1,39 @@ +#!/bin/bash +# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- +# ex: ts=8 sw=4 sts=4 et filetype=sh + +# called by dracut +check() { +# do not add this module by default + local arch=$(uname -m) + [ "$arch" = "s390" -o "$arch" = "s390x" ] || return 1 + return 0 +} + +find_mount() { + local dev mnt etc wanted_dev + wanted_dev="$(readlink -e -q $1)" + while read dev mnt etc; do + [ "$mnt" = "$wanted_dev" ] && echo "$dev" && return 0 + done < /proc/mounts + return 1 +} + +cmdline() { + local zipl_dasd + zipl_dasd=`find_mount /boot/zipl` + printf " rd.zipl_dasd=%s\n" "$zipl_dasd " +} + +# called by dracut +install() { + if [[ $hostonly_cmdline == "yes" ]];then + echo $(cmdline) >"${initdir}/etc/cmdline.d/01zipl_dasd.conf" + fi + + inst_hook pre-mount 10 "$moddir/parse-zipl.sh" + inst_multiple cio_ignore mount umount mkdir +} +installkernel() { + instmods ext4 +} diff --git a/modules.d/81cio_ignore/parse-zipl.sh b/modules.d/81cio_ignore/parse-zipl.sh new file mode 100644 index 0000000..5f7aa58 --- /dev/null +++ b/modules.d/81cio_ignore/parse-zipl.sh @@ -0,0 +1,29 @@ +#!/bin/sh +# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- +# ex: ts=8 sw=4 sts=4 et filetype=sh + +ZIPL_DEV="$(getarg rd.zipl_dasd)" +ZIPL_DIR=/tmp/zipl +CIO_REMOVE_LIST=$ZIPL_DIR/active_devices.txt + +if [ -n $ZIPL_DEV ];then + info "Waiting for zipl device $ZIPL_DEV" + wait_for_dev -n "$ZIPL_DEV" +# +# mount device and read devices +# + [ -d $ZIPL_DIR ] || mkdir $ZIPL_DIR + mount -t ext2 -o ro $ZIPL_DEV $ZIPL_DIR + if [ -f $CIO_REMOVE_LIST ] ; then +# +# File exist +# + while read dev etc; do + [ "$dev" = "#" -o "$dev" = "" ] && continue + cio_ignore --remove $dev + done < $CIO_REMOVE_LIST + fi + umount $ZIPL_DIR +else + warn "No rd.zipl_dasd boot parameter found" +fi -- 1.8.4.5 ++++++ 0057-01fips-Include-some-more-hmacs.patch ++++++
From b53bc39cb35dda350b0629036a3eb87d90debe56 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Thu, 12 Jun 2014 09:26:20 +0200 Subject: 01fips: Include some more hmacs
Include the several hmacs needed for FIPS integrity checking of cryptsetup, libgcrypt, libfipscheck1. Also add the openssl HMACs too as someone else seems to use those too. Signed-off-by: Marcus Meissner <meissner@suse.de> --- modules.d/01fips/module-setup.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/modules.d/01fips/module-setup.sh b/modules.d/01fips/module-setup.sh index aa56fcf..d6907a3 100755 --- a/modules.d/01fips/module-setup.sh +++ b/modules.d/01fips/module-setup.sh @@ -46,7 +46,11 @@ install() { inst_libdir_file libsoftokn3.so libsoftokn3.so \ libsoftokn3.chk libfreebl3.so libfreebl3.chk \ - libssl.so 'hmaccalc/sha512hmac.hmac' libssl.so.10 + libssl.so 'hmaccalc/sha512hmac.hmac' libssl.so.10 \ + .libcrypto.so.1.0.0.hmac .libssl.so.1.0.0.hmac \ + .libcryptsetup.so.4.5.0.hmac .libcryptsetup.so.4.hmac \ + .libgcrypt.so.20.hmac \ + .libfipscheck.so.1.hmac .libfipscheck.so.1.1.0.hmac # we do not use prelink at SUSE #inst_multiple -o prelink -- 1.8.4.5 ++++++ 0058-dracut-add-warning-when-including-unsupported-module.patch ++++++
From 5473e4b5d8d9bbf9bd995dff815647de0ed1b30b Mon Sep 17 00:00:00 2001 From: Jeff Mahoney <jeffm@suse.com> Date: Thu, 12 Jun 2014 09:30:01 +0200 Subject: dracut: add warning when including unsupported modules
With self-built kernels (often used for debugging by both internal and external development), it's a common mistake to not set up Module.supported properly. As a result, modules can end up without the supported tag. "make install" will happily build an initramfs, via dracut, that will not boot due to the kernel refusing to load the unsupported modules. This patch adds a --check-supported option to check whether all modules added to the initramfs are marked supported and warn if they are not. It will not cause the initramfs creation to fail. The option is intended to be called via /sbin/installkernel, which will check to see if the kernel has CONFIG_SUSE_KERNEL_SUPPORTED before using the option. Signed-off-by: Jeff Mahoney <jeffm@suse.com> --- dracut-functions.sh | 21 +++++++++++++++++++++ dracut.8.asc | 11 +++++++++++ dracut.sh | 5 +++++ 3 files changed, 37 insertions(+) diff --git a/dracut-functions.sh b/dracut-functions.sh index 5b3b1fb..1e0779a 100755 --- a/dracut-functions.sh +++ b/dracut-functions.sh @@ -1400,6 +1400,17 @@ for_each_module_dir() { done } +check_supported_kmod() { + kmod=$1 + supported=$(modinfo -k $kernel -F supported $kmod 2>/dev/null) + case "$supported" in + yes|external) ;; + *) dwarn "Module \"$(basename $kmod)\" is unsupported. This may cause" \ + "problems while booting." ;; + esac +} + + # Install a single kernel module along with any firmware it may require. # $1 = full path to kernel module to install install_kmod_with_fw() { @@ -1462,6 +1473,10 @@ install_kmod_with_fw() { fi fi done + + if [[ "$check_supported" = "yes" ]]; then + check_supported_kmod $1 + fi return 0 } @@ -1508,6 +1523,12 @@ dracut_kernel_post() { inst_simple "$_modpath" "/lib/modules/$kernel/${_destpath}" || exit $? done < "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep" fi + + if [[ $check_supported ]]; then + while read _modpath; do + check_supported_kmod $_modpath + done < "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep" + fi ) & _pid=$(jobs -p | while read a ; do printf ":$a";done) _pid=${_pid##*:} diff --git a/dracut.8.asc b/dracut.8.asc index 5ff0e82..39cbb98 100644 --- a/dracut.8.asc +++ b/dracut.8.asc @@ -456,6 +456,17 @@ will not be able to boot. Regenerate all initramfs images at the default location with the kernel versions found on the system. Additional parameters are passed through. +**--check-supported**:: + The kernel may be configured to check whether a module is + supported by the vendor before allowing it to be loaded. On these + systems, it's possible to generate an initramfs image that will + fail to boot due to unsupported modules being refused. This + option enables a check that will issue a warning if a module built + without the support option enabled is encountered while building + the image. Use of this option assumes that the kernel requires + supported modules and will issue a warning on every module if used + otherwise. + FILES ----- _/var/log/dracut.log_:: diff --git a/dracut.sh b/dracut.sh index 79a6840..a58e134 100755 --- a/dracut.sh +++ b/dracut.sh @@ -193,6 +193,9 @@ Creates initial ramdisk images for preloading modules --printsize Print out the module install size --sshkey [SSHKEY] Add ssh key to initramfs (use with ssh-client module) --logfile [FILE] Logfile to use (overrides configuration setting) + --check-supported Check to ensure that modules are marked supported when + using a kernel that is configured to check the + support status of a module before loading. If [LIST] has multiple arguments, then you have to put these in quotes. @@ -374,6 +377,7 @@ rearrange_params() --long noimageifnotneeded \ --long early-microcode \ --long no-early-microcode \ + --long check-supported \ -- "$@") if (( $? != 0 )); then @@ -557,6 +561,7 @@ while :; do --printsize) printsize="yes";; --regenerate-all) regenerate_all="yes";; --noimageifnotneeded) noimageifnotneeded="yes";; + --check-supported) check_supported="yes" ;; --) shift; break;; -- 1.8.4.5 ++++++ 0059-99suse-Add-SUSE-specific-initrd-parsing.patch ++++++
From 1202041ec3f7b2d8dd58999e72a309c9fba9069f Mon Sep 17 00:00:00 2001 From: Thomas Renninger <trenn@suse.de> Date: Wed, 4 Jun 2014 12:56:50 +0200 Subject: 99suse: Add SUSE-specific initrd parsing
Add a module to implement mkinitrd-compatible kernel parameter parsing Signed-off-by: Thomas Renninger <trenn@suse.de> --- modules.d/99suse/module-setup.sh | 8 ++++++ modules.d/99suse/parse-suse-initrd.sh | 51 +++++++++++++++++++++++++++++++++++ 2 files changed, 59 insertions(+) create mode 100755 modules.d/99suse/module-setup.sh create mode 100755 modules.d/99suse/parse-suse-initrd.sh diff --git a/modules.d/99suse/module-setup.sh b/modules.d/99suse/module-setup.sh new file mode 100755 index 0000000..06afba8 --- /dev/null +++ b/modules.d/99suse/module-setup.sh @@ -0,0 +1,8 @@ +#!/bin/bash +# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- +# ex: ts=8 sw=4 sts=4 et filetype=sh +# module-setup.sh for openSUSE / SLE initrd parameters conversion + +install() { + inst_hook cmdline 99 "$moddir/parse-suse-initrd.sh" +} diff --git a/modules.d/99suse/parse-suse-initrd.sh b/modules.d/99suse/parse-suse-initrd.sh new file mode 100755 index 0000000..542171b --- /dev/null +++ b/modules.d/99suse/parse-suse-initrd.sh @@ -0,0 +1,51 @@ +#!/bin/sh +# convert openSUSE / SLE initrd command lines into dracut ones +# linuxrc=trace shell=1 sysrq=yes sysrq=1-9 journaldev mduuid +# TargetAddress TargetPort TargetName + +# sysrq +sysrq=$(getarg sysrq) +if [ "$sysrq" ] && [ "$sysrq" != "no" ]; then + echo 1 > /proc/sys/kernel/sysrq + case "$sysrq" in + 0|1|2|3|4|5|6|7|8|9) + echo $sysrq > /proc/sysrq-trigger + ;; + esac +fi + +# debug +if getarg linuxrc=trace; then + echo "rd.debug rd.udev.debug" >> /etc/cmdline.d/99-suse.conf + unset CMDLINE +fi + +# debug shell +if getargbool 0 shell; then + echo "rd.break" >> /etc/cmdline.d/99-suse.conf + unset CMDLINE +fi + +# journaldev +journaldev=$(getarg journaldev) +if [ -n "$journaldev" ]; then + echo "root.journaldev=$journaldev" >> /etc/cmdline.d/99-suse.conf + unset CMDLINE +fi + +# mduuid +mduuid=$(getarg mduuid) +if [ -n "$mduuid"]; then + echo "rd.md.uuid=$mduuid" >> /etc/cmdline.d/99-suse.conf + unset CMDLINE +fi + +# TargetAddress / TargetPort / TargetName +TargetAddress=$(getarg TargetAddress) +TargetPort=$(getarg TargetPort) +TargetName=$(getarg TargetName) + +if [ -n "$TargetAddress" -a -n "$TargetName" ]; then + echo "netroot=iscsi:$TargetAddress::$TargetPort::$TargetName" >> /etc/cmdline.d/99-suse.conf + unset CMDLINE +fi -- 1.8.4.5 ++++++ 0060-45ifcfg-Add-SUSE-specific-write-ifcfg-file.patch ++++++
From b22afa48bc111794259230cf3144262c719b55f5 Mon Sep 17 00:00:00 2001 From: Pawel Wieczorkiewicz <pwieczorkiewicz@suse.com> Date: Wed, 4 Jun 2014 13:00:06 +0200 Subject: 45ifcfg: Add SUSE-specific write-ifcfg file
Signed-off-by: Pawel Wieczorkiewicz <pwieczorkiewicz@suse.com> --- modules.d/45ifcfg/write-ifcfg-suse.sh | 183 ++++++++++++++++++++++++++++++++++ 1 file changed, 183 insertions(+) create mode 100755 modules.d/45ifcfg/write-ifcfg-suse.sh diff --git a/modules.d/45ifcfg/write-ifcfg-suse.sh b/modules.d/45ifcfg/write-ifcfg-suse.sh new file mode 100755 index 0000000..4b6350f --- /dev/null +++ b/modules.d/45ifcfg/write-ifcfg-suse.sh @@ -0,0 +1,183 @@ +#!/bin/sh +# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- +# ex: ts=8 sw=4 sts=4 et filetype=sh + +# NFS root might have reached here before /tmp/net.ifaces was written +udevadm settle --timeout=30 + +if [ -e /tmp/bridge.info ]; then + . /tmp/bridge.info +fi + +if [ -e /tmp/vlan.info ]; then + . /tmp/vlan.info +fi + +mkdir -m 0755 -p /tmp/ifcfg/ +mkdir -m 0755 -p /tmp/ifcfg-leases/ + +get_vid() { + case "$1" in + vlan*) + echo ${1#vlan} + ;; + *.*) + echo ${1##*.} + ;; + esac +} + +for netup in /tmp/net.*.did-setup ; do + [ -f $netup ] || continue + + netif=${netup%%.did-setup} + netif=${netif##*/net.} + [ -e /tmp/ifcfg/ifcfg-$netif ] && continue + unset bridge + unset bond + unset bondslaves + unset bondname + unset bondoptions + unset uuid + unset ip + unset gw + unset mtu + unset mask + unset macaddr + unset slave + unset ethname + [ -e /tmp/bond.${netif}.info ] && . /tmp/bond.${netif}.info + + uuid=$(cat /proc/sys/kernel/random/uuid) + if [ "$netif" = "$bridgename" ]; then + bridge=yes + elif [ "$netif" = "$bondname" ]; then + # $netif can't be bridge and bond at the same time + bond=yes + fi + if [ "$netif" = "$vlanname" ]; then + vlan=yes + fi + cat /sys/class/net/$netif/address > /tmp/net.$netif.hwaddr + { + echo "# Generated by dracut initrd" + echo "NAME='$netif'" + if [ -f /tmp/net.$netif.has_ibft_config ]; then + echo "STARTMODE='nfsroot'" + else + echo "STARTMODE='auto'" + fi + + local bootproto="static" + if [ -f /tmp/leaseinfo.${netif}.dhcp.ipv6 ]; then + bootproto="dhcp6" + fi + if [ -f /tmp/leaseinfo.${netif}.dhcp.ipv4 ]; then + if [ "$bootproto" = "dhcp6" ]; then + bootproto="dhcp" + else + bootproto="dhcp4" + fi + fi + + echo "BOOTPROTO='$bootproto'" + + if [ "$bootproto" = "static" ]; then + # If we've booted with static ip= lines, the override file is there + [ -e /tmp/net.$netif.override ] && . /tmp/net.$netif.override + echo "IPADDR='$ip'" + if [ -n "$mask" ]; then + if strstr "$mask" "."; then + echo "NETMASK='$mask'" + else + echo "PREFIXLEN='$mask'" + fi + fi + if [ -n "$gw" ]; then + echo "GATEWAY='$gw'" + fi + fi + [ -n "$mtu" ] && echo "MTU='$mtu'" + } > /tmp/ifcfg/ifcfg-$netif + + # bridge needs different things written to ifcfg + if [ -z "$bridge" ] && [ -z "$bond" ] && [ -z "$vlan" ]; then + # standard interface + { + if [ -n "$macaddr" ]; then + echo "LLADDR='$macaddr'" + else + echo "LLADDR='$(cat /sys/class/net/$netif/address)'" + fi + echo "INTERFACETYPE='Ethernet'" + } >> /tmp/ifcfg/ifcfg-$netif + fi + + if [ -n "$vlan" ]; then + { + echo "INTERFACETYPE='Vlan'" + echo "VLAN_ID='$(get_vid $vlanname)'" + echo "ETHERDEVICE='$phydevice'" + } >> /tmp/ifcfg/ifcfg-$netif + fi + + if [ -n "$bond" ] ; then + # bond interface + { + # This variable is an indicator of a bond interface for initscripts + echo "BONDING_MASTER='yes'" + echo "BONDING_MODULE_OPTS='$bondoptions'" + echo "INTERFACETYPE='Bond'" + } >> /tmp/ifcfg/ifcfg-$netif + + local i=0 + for slave in $bondslaves ; do + echo "BONDING_SLAVE_$i='$slave'" >> /tmp/ifcfg/ifcfg-$netif + i=$((i+1)) + # write separate ifcfg file for the raw eth interface + { + echo "# Generated by dracut initrd" + echo "NAME='$slave'" + echo "INTERFACETYPE='Ethernet'" + echo "STARTMODE='hotplug'" + echo "BOOTPROTO='none'" + echo "# ETHTOOL=''" + } >> /tmp/ifcfg/ifcfg-$slave + done + fi + + if [ -n "$bridge" ] ; then + # bridge + { + echo "INTERFACETYPE='Bridge'" + echo "BRIDGE='yes'" + echo "BRIDGE_STP='off'" + echo "BRIDGE_FORWARDDELAY='0'" + echo -n "BRIDGE_PORTS='" + + } >> /tmp/ifcfg/ifcfg-$netif + + if [ "$ethname" = "$bondname" ] ; then + { + for slave in $bondslaves ; do + echo -n "$bondname " + done + echo "'" + } >> /tmp/ifcfg/ifcfg-$netif + else + echo "$ethname'" >> /tmp/ifcfg/ifcfg-$netif + fi + fi +done + +# Pass network opts +mkdir -m 0755 -p /run/initramfs/state/etc/sysconfig/network +mkdir -m 0755 -p /run/initramfs/state/var/run/wicked +echo "files /etc/sysconfig/network" >> /run/initramfs/rwtab +echo "files /var/run/wicked" >> /run/initramfs/rwtab +{ + cp /tmp/net.* /run/initramfs/ + cp /tmp/net.$netif.resolv.conf /run/initramfs/state/etc/resolv.conf + copytree /tmp/ifcfg /run/initramfs/state/etc/sysconfig/network + cp /tmp/leaseinfo.* /run/initramfs/state/var/run/wicked/ +} > /dev/null 2>&1 -- 1.8.4.5 ++++++ 0061-45ifcfg-Fixup-error-message-in-write-ifcfg-suse.patch ++++++
From 8bbd0f21e9c85898219bdf0f8dc3d31ccfaaf477 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Wed, 4 Jun 2014 13:12:31 +0200 Subject: 45ifcfg: Fixup error message in write-ifcfg-suse
A fix was missing in write-ifcfg-suse.sh, cause dracut to issue a warning for a non-existent file. References: bnc#881286 Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/45ifcfg/write-ifcfg-suse.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/modules.d/45ifcfg/write-ifcfg-suse.sh b/modules.d/45ifcfg/write-ifcfg-suse.sh index 4b6350f..e9b4d10 100755 --- a/modules.d/45ifcfg/write-ifcfg-suse.sh +++ b/modules.d/45ifcfg/write-ifcfg-suse.sh @@ -32,6 +32,7 @@ for netup in /tmp/net.*.did-setup ; do netif=${netup%%.did-setup} netif=${netif##*/net.} + strglobin "$netif" ":*:*:*:*:" && continue [ -e /tmp/ifcfg/ifcfg-$netif ] && continue unset bridge unset bond @@ -58,7 +59,8 @@ for netup in /tmp/net.*.did-setup ; do if [ "$netif" = "$vlanname" ]; then vlan=yes fi - cat /sys/class/net/$netif/address > /tmp/net.$netif.hwaddr + [ -e /sys/class/net/$netif/address ] && \ + cat /sys/class/net/$netif/address > /tmp/net.$netif.hwaddr { echo "# Generated by dracut initrd" echo "NAME='$netif'" -- 1.8.4.5 ++++++ 0062-95iscsi-Install-libgcc_s-library.patch ++++++
From 3dc545f7525dd340edbc0dfa88ee331d77b23dee Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Wed, 11 Jun 2014 10:13:13 +0200 Subject: 95iscsi: Install libgcc_s library
iscsiuio is using pthread, which requires libgcc_s for pthread_cancel to work. Without this library iscsiuio will crash with SIGABRT. References: bnc#881692 Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/95iscsi/module-setup.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/modules.d/95iscsi/module-setup.sh b/modules.d/95iscsi/module-setup.sh index 52fac5c..41785e1 100755 --- a/modules.d/95iscsi/module-setup.sh +++ b/modules.d/95iscsi/module-setup.sh @@ -108,6 +108,7 @@ cmdline() { install() { inst_multiple umount iscsistart hostname iscsi-iname inst_multiple -o iscsiuio + inst_libdir_file 'libgcc_s.so*' inst_hook cmdline 90 "$moddir/parse-iscsiroot.sh" inst_hook cleanup 90 "$moddir/cleanup-iscsi.sh" inst "$moddir/iscsiroot.sh" "/sbin/iscsiroot" -- 1.8.4.5 ++++++ 0063-90multipath-Install-libgcc_s-library.patch ++++++
From 5663e58535567b1566f17b316fab77b467de21e0 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Wed, 11 Jun 2014 10:16:46 +0200 Subject: 90multipath: Install libgcc_s library
multipathd is using pthreads, which require libgcc_s for pthread_cancel to work. Without it multipathd might crash with SIGABRT. Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/90multipath/module-setup.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/modules.d/90multipath/module-setup.sh b/modules.d/90multipath/module-setup.sh index 0149df9..7b20709 100755 --- a/modules.d/90multipath/module-setup.sh +++ b/modules.d/90multipath/module-setup.sh @@ -89,6 +89,7 @@ install() { inst $(command -v partx) /sbin/partx inst_libdir_file "libmultipath*" "multipath/*" + inst_libdir_file 'libgcc_s.so*' if dracut_module_included "systemd"; then inst_simple "${moddir}/multipathd.service" "${systemdsystemunitdir}/multipathd.service" -- 1.8.4.5 ++++++ 0064-90kernel-modules-install-scsi_dh_alua.patch ++++++
From 390605b9be082a2b5ed0ecee6a60ceadf6e7b788 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Thu, 12 Jun 2014 11:45:09 +0200 Subject: 90kernel-modules: install scsi_dh_alua
Install the missing scsi_dh_alua module, too. References: bnc#871617 Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/90kernel-modules/module-setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules.d/90kernel-modules/module-setup.sh b/modules.d/90kernel-modules/module-setup.sh index 2378663..7ee73ad 100755 --- a/modules.d/90kernel-modules/module-setup.sh +++ b/modules.d/90kernel-modules/module-setup.sh @@ -43,7 +43,7 @@ installkernel() { uhci-hcd \ xhci-hcd - instmods yenta_socket scsi_dh_rdac scsi_dh_emc \ + instmods yenta_socket scsi_dh_rdac scsi_dh_emc scsi_dh_alua \ atkbd i8042 usbhid hid-apple hid-sunplus hid-cherry hid-logitech \ hid-logitech-dj hid-microsoft firewire-ohci \ pcmcia usb_storage nvme hid-hyperv hv-vmbus \ -- 1.8.4.5 ++++++ 0065-95iscsi-Fixup-bnx2i-offload-booting.patch ++++++
From 4c9b6f84183857781f93fba3ae75cbce2e0dcbd3 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Fri, 13 Jun 2014 12:30:11 +0200 Subject: 95iscsi: Fixup bnx2i offload booting
bnx2i is using a separate iSCSI offload engine with a separate MAC address. As a result, the iBFT information is displaying a MAC address which does not relate to any MAC address from the network interfaces. In addition, the iSCSI offload engine works independently on the NIC, so we do not need to enable the NIC for iSCSI offload to work. This patch modifies the automatic iBFT detection to not set the 'ip=ibft' flag when bnx2i offload is detected. References: bnc#855747 Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/95iscsi/module-setup.sh | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/modules.d/95iscsi/module-setup.sh b/modules.d/95iscsi/module-setup.sh index 41785e1..e94e913 100755 --- a/modules.d/95iscsi/module-setup.sh +++ b/modules.d/95iscsi/module-setup.sh @@ -2,14 +2,38 @@ # -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- # ex: ts=8 sw=4 sts=4 et filetype=sh +get_ibft_mod() { + local ibft_mac=$1 + # Return the iSCSI offload module for a given MAC address + iscsiadm -m iface | while read iface_name iface_desc ; do + IFS=$',' + set -- $iface_desc + if [ "$ibft_mac" = "$2" ] ; then + echo $1 + return 0 + fi + unset IFS + done +} + install_ibft() { # When iBFT / iscsi_boot is detected: # - Use 'ip=ibft' to set up iBFT network interface + # Note: bnx2i is using a different MAC address of iSCSI offloading + # so the 'ip=ibft' parameter must not be set # - specify firmware booting cmdline parameter for d in /sys/firmware/* ; do + if [ -d ${d}/ethernet0 ] ; then + read ibft_mac < ${d}/ethernet0/mac + ibft_mod=$(get_ibft_mod $ibft_mac) + fi + if [ -z "$ibft_mod" ] && [ -d ${d}/ethernet1 ] ; then + read ibft_mac < ${d}/ethernet1/mac + ibft_mod=$(get_ibft_mod $ibft_mac) + fi if [ -d ${d}/initiator ] ; then - if [ ${d##*/} = "ibft" ] ; then + if [ ${d##*/} = "ibft" ] && [ "$ibft_mod" != "bnx2i" ] ; then echo -n "ip=ibft " fi echo -n "rd.iscsi.firmware=1" -- 1.8.4.5 ++++++ 0066-40network-always-start-netroot-in-ifup.sh.patch ++++++
From ad967a08bbf67171a75acc84a9ea2ffbd9461aa5 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Wed, 4 Jun 2014 12:04:10 +0200 Subject: 40network: always start netroot in ifup.sh
It's totally irrelevant how the network is configured when trying to setup netroot. It only matters if it could be configured at all. So change the logic the check for correct network setup and then start netroot. References: bnc#881235 Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/40network/ifup.sh | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/modules.d/40network/ifup.sh b/modules.d/40network/ifup.sh index 934c61e..494017b 100755 --- a/modules.d/40network/ifup.sh +++ b/modules.d/40network/ifup.sh @@ -420,21 +420,15 @@ for p in $(getargs ip=); do do_static ;; esac - > /tmp/net.${netif}.up + if [ $? -eq 0 ]; then + > /tmp/net.${netif}.up - case $autoconf in - dhcp|on|any|dhcp6) - ;; - *) - if [ $? -eq 0 ]; then - setup_net $netif - source_hook initqueue/online $netif - if [ -z "$manualup" ]; then - /sbin/netroot $netif - fi - fi - ;; - esac + setup_net $netif + source_hook initqueue/online $netif + if [ -z "$manualup" ]; then + /sbin/netroot $netif + fi + fi exit 0 done -- 1.8.4.5 ++++++ 0067-95fcoe-check-always-returns-255.patch ++++++
From c6cadbd3ea9abf5dd92172c27e1f06611d5a0185 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Mon, 16 Jun 2014 14:08:38 +0200 Subject: 95fcoe: check() always returns 255
There is a typo in the 'check' function in module_setup.sh, causing it always to return 255. Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/95fcoe/module-setup.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules.d/95fcoe/module-setup.sh b/modules.d/95fcoe/module-setup.sh index 7abfb01..57d5c1e 100755 --- a/modules.d/95fcoe/module-setup.sh +++ b/modules.d/95fcoe/module-setup.sh @@ -46,9 +46,9 @@ check() { [[ $hostonly ]] || [[ $mount_needs ]] && { for c in /sys/bus/fcoe/devices/ctlr_* ; do [ -L $c ] || continue - break; + fcoe_ctlr=$c done - return 255 + [ -z "$fcoe_ctlr" ] && return 255 } require_binaries dcbtool fipvlan lldpad ip readlink || return 1 -- 1.8.4.5 ++++++ 0068-95fcoe-uefi-Test-for-EFI-firmware.patch ++++++
From df4d0bb82b7571d0230abbae8b918373b62fdb74 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Mon, 16 Jun 2014 14:10:48 +0200 Subject: 95fcoe-uefi: Test for EFI firmware
The fcoe-uefi module should test for EFI firmware when called in 'hostonly' mode; of no EFI firmware is found then the module doesn't need to be included. References: bnc#882412 Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/95fcoe-uefi/module-setup.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/modules.d/95fcoe-uefi/module-setup.sh b/modules.d/95fcoe-uefi/module-setup.sh index 0fb06e2..f5277f4 100755 --- a/modules.d/95fcoe-uefi/module-setup.sh +++ b/modules.d/95fcoe-uefi/module-setup.sh @@ -4,6 +4,9 @@ # called by dracut check() { + [[ $hostonly ]] || [[ $mount_needs ]] && { + [ -d /sys/firmware/efi ] || return 255 + } require_binaries dcbtool fipvlan lldpad ip readlink || return 1 return 0 } -- 1.8.4.5 ++++++ dracut-installkernel ++++++ --- /var/tmp/diff_new_pack.bfbGBl/_old 2014-06-18 07:52:36.000000000 +0200 +++ /var/tmp/diff_new_pack.bfbGBl/_new 2014-06-18 07:52:36.000000000 +0200 @@ -63,6 +63,14 @@ cp -fp $BOOTIMAGE $INSTALL_PATH/$BOOTFILE-$KERNEL_VERSION cp -fp $MAPFILE $INSTALL_PATH/System.map-$KERNEL_VERSION +CONFIG=$(dirname $MAPFILE)/.config +CHECK_SUPPORTED= +if [ -e "$CONFIG" ]; then + if grep -q "^CONFIG_SUSE_KERNEL_SUPPORTED=y" $CONFIG ; then + CHECK_SUPPORTED="--check-supported" + fi +fi + KERNTYPES=$(dirname $MAPFILE)/init/kerntypes.o if [ -e $KERNTYPES ]; then cp -fp $KERNTYPES $INSTALL_PATH/Kerntypes-$KERNEL_VERSION @@ -85,8 +93,8 @@ # Generate initial ramdisk # if [ -x /usr/bin/dracut -a -d /lib/modules/$KERNEL_VERSION ]; then - /usr/bin/dracut --hostonly --force $INSTALL_PATH/initrd-$KERNEL_VERSION \ - $KERNEL_VERSION + /usr/bin/dracut --hostonly --force $CHECK_SUPPORTED \ + $INSTALL_PATH/initrd-$KERNEL_VERSION $KERNEL_VERSION else echo "You may need to create an initial ramdisk now." fi ++++++ dracut_v37_to_HEAD.patch ++++++ --- /var/tmp/diff_new_pack.bfbGBl/_old 2014-06-18 07:52:36.000000000 +0200 +++ /var/tmp/diff_new_pack.bfbGBl/_new 2014-06-18 07:52:36.000000000 +0200 @@ -1,5 +1,10 @@ +HEAD is: +commit 0fa5dbedc5b222435f51f7460a81232ee120c4e1 +Date: Tue May 20 13:23:43 2014 +0200 + + diff --git a/dracut-functions.sh b/dracut-functions.sh -index 391b549..c758029 100755 +index 391b549..ac22b7e 100755 --- a/dracut-functions.sh +++ b/dracut-functions.sh @@ -33,7 +33,11 @@ if [[ $initdir ]] && ! [[ -d $initdir ]]; then @@ -15,6 +20,24 @@ # helper function for check() in module-setup.sh # to check for required installed binaries +@@ -49,7 +53,7 @@ require_binaries() { + + for cmd in "$@"; do + if ! find_binary "$cmd" &>/dev/null; then +- dinfo "$_module_name: Could not find command '$cmd'!" ++ dinfo "dracut module '${_module_name#[0-9][0-9]}' will not be installed, because command '$cmd' could not be found!" + ((_ret++)) + fi + done +@@ -221,7 +225,7 @@ print_vars() { + + for _var in "$@" + do +- eval printf -v _value "%s" "\$$_var" ++ eval printf -v _value "%s" \""\$$_var"\" + [[ ${_value} ]] && printf '%s="%s"\n' "$_var" "$_value" + done + } diff --git a/dracut-initramfs-restore.sh b/dracut-initramfs-restore.sh index f29c814..0dd1938 100644 --- a/dracut-initramfs-restore.sh @@ -45,6 +68,32 @@ rm -f -- .need_shutdown else # something failed, so we clean up +diff --git a/dracut.sh b/dracut.sh +index c1ef474..c4163bc 100755 +--- a/dracut.sh ++++ b/dracut.sh +@@ -834,6 +834,13 @@ trap 'exit 1;' SIGINT + export DRACUT_KERNEL_LAZY="1" + export DRACUT_RESOLVE_LAZY="1" + ++if [[ $print_cmdline ]]; then ++ stdloglvl=0 ++ sysloglvl=0 ++ fileloglvl=0 ++ kmsgloglvl=0 ++fi ++ + if [[ -f $dracutbasedir/dracut-functions.sh ]]; then + . $dracutbasedir/dracut-functions.sh + else +@@ -907,6 +914,7 @@ for ((i=0; i < ${#dracut_args[@]}; i++)); do + dracut_args[$i]="\"${dracut_args[$i]}\"" + #" keep vim happy + done ++ + dinfo "Executing: $0 ${dracut_args[@]}" + + [[ $do_list = yes ]] && { diff --git a/lsinitrd.sh b/lsinitrd.sh index 8dc9032..a697bc2 100755 --- a/lsinitrd.sh @@ -219,10 +268,19 @@ + return 0 +} diff --git a/modules.d/45ifcfg/write-ifcfg.sh b/modules.d/45ifcfg/write-ifcfg.sh -index e2fa485..5de2e90 100755 +index e2fa485..6756c3f 100755 --- a/modules.d/45ifcfg/write-ifcfg.sh +++ b/modules.d/45ifcfg/write-ifcfg.sh -@@ -85,7 +85,7 @@ for netup in /tmp/net.*.did-setup ; do +@@ -3,6 +3,8 @@ + # ex: ts=8 sw=4 sts=4 et filetype=sh + + # NFS root might have reached here before /tmp/net.ifaces was written ++type is_persistent_ethernet_name >/dev/null 2>&1 || . /lib/net-lib.sh ++ + udevadm settle --timeout=30 + + if [ -e /tmp/bridge.info ]; then +@@ -85,7 +87,7 @@ for netup in /tmp/net.*.did-setup ; do netif=${netup%%.did-setup} netif=${netif##*/net.} @@ -231,16 +289,18 @@ [ -e /tmp/ifcfg/ifcfg-$netif ] && continue unset bridge unset bond -@@ -122,7 +122,7 @@ for netup in /tmp/net.*.did-setup ; do +@@ -120,9 +122,9 @@ for netup in /tmp/net.*.did-setup ; do + echo "ONBOOT=yes" + echo "NETBOOT=yes" echo "UUID=\"$uuid\"" ++ strstr "$(ip -6 addr show dev $netif)" 'inet6' && echo "IPV6INIT=yes" if [ -f /tmp/dhclient.$netif.lease ]; then [ -f /tmp/dhclient.$netif.dhcpopts ] && . /tmp/dhclient.$netif.dhcpopts - strstr "$ip" '*:*:*' && echo "IPV6INIT=yes" -+ strstr "$(ip -6 addr show dev $netif)" 'inet6' && echo "IPV6INIT=yes" if [ -f /tmp/net.$netif.has_ibft_config ]; then echo "BOOTPROTO=ibft" else -@@ -132,7 +132,7 @@ for netup in /tmp/net.*.did-setup ; do +@@ -132,7 +134,7 @@ for netup in /tmp/net.*.did-setup ; do else # If we've booted with static ip= lines, the override file is there [ -e /tmp/net.$netif.override ] && . /tmp/net.$netif.override @@ -249,7 +309,7 @@ echo "IPV6INIT=yes" echo "IPV6_AUTOCONF=no" echo "IPV6ADDR=\"$ip/$mask\"" -@@ -149,7 +149,7 @@ for netup in /tmp/net.*.did-setup ; do +@@ -149,7 +151,7 @@ for netup in /tmp/net.*.did-setup ; do fi fi fi @@ -258,7 +318,7 @@ echo "IPV6_DEFAULTGW=\"$gw\"" elif [ -n "$gw" ]; then echo "GATEWAY=\"$gw\"" -@@ -164,7 +164,13 @@ for netup in /tmp/net.*.did-setup ; do +@@ -164,7 +166,13 @@ for netup in /tmp/net.*.did-setup ; do { [ -n "$macaddr" ] && echo "MACADDR=\"$macaddr\"" if ! print_s390 $netif; then @@ -299,6 +359,18 @@ if [ "$ipv6" ] && ! str_starts "$IPADDR" "["; then IPADDR="[$IPADDR]" +diff --git a/modules.d/80cms/cmssetup.sh b/modules.d/80cms/cmssetup.sh +index 36955bc..c9e1331 100755 +--- a/modules.d/80cms/cmssetup.sh ++++ b/modules.d/80cms/cmssetup.sh +@@ -144,6 +144,7 @@ function dasd_settle_all() { + processcmsfile() + { + source /tmp/cms.conf ++ SUBCHANNELS="$(echo $SUBCHANNELS | sed 'y/ABCDEF/abcdef/')" + + if [[ $NETTYPE ]]; then + ( diff --git a/modules.d/90dm/module-setup.sh b/modules.d/90dm/module-setup.sh index 829c24b..2367588 100755 --- a/modules.d/90dm/module-setup.sh @@ -326,6 +398,32 @@ sed -i -e 's/^ENV{SYSTEMD_ALIAS}=.*/# No LVM pvscan in dracut - lvmetad is not running yet/' ${initdir}/lib/udev/rules.d/69-dm-lvm-metad.rules sed -i -e 's/^ENV{ID_MODEL}=.*//' ${initdir}/lib/udev/rules.d/69-dm-lvm-metad.rules sed -i -e 's/^ENV{SYSTEMD_WANTS}=.*//' ${initdir}/lib/udev/rules.d/69-dm-lvm-metad.rules +diff --git a/modules.d/90mdraid/module-setup.sh b/modules.d/90mdraid/module-setup.sh +index ac745d1..81c94f2 100755 +--- a/modules.d/90mdraid/module-setup.sh ++++ b/modules.d/90mdraid/module-setup.sh +@@ -54,6 +54,8 @@ cmdline() { + done + ) + ++ [[ -z "$UUID" ]] && continue ++ + if ! [[ ${_activated[${UUID}]} ]]; then + printf "%s" " rd.md.uuid=${UUID}" + _activated["${UUID}"]=1 +diff --git a/modules.d/95fcoe-uefi/parse-uefifcoe.sh b/modules.d/95fcoe-uefi/parse-uefifcoe.sh +index 0799cdd..7b8f1a6 100755 +--- a/modules.d/95fcoe-uefi/parse-uefifcoe.sh ++++ b/modules.d/95fcoe-uefi/parse-uefifcoe.sh +@@ -26,7 +26,7 @@ print_fcoe_uefi_conf() + esac + fi + # fcoe=eth0:nodcb +- printf "%s\n" "$dev:nodcb" ++ printf "fcoe=%s\n" "$dev:nodcb" + return 0 + } + diff --git a/modules.d/95fcoe/fcoe-genrules.sh b/modules.d/95fcoe/fcoe-genrules.sh index 80894ed..fa3af6d 100755 --- a/modules.d/95fcoe/fcoe-genrules.sh @@ -411,6 +509,21 @@ # prefer $NEWROOT/etc/fstab.sys over local /etc/fstab.sys if [ -f $NEWROOT/etc/fstab.sys ]; then +diff --git a/modules.d/95nbd/nbdroot.sh b/modules.d/95nbd/nbdroot.sh +index 32f346d..8bfbebc 100755 +--- a/modules.d/95nbd/nbdroot.sh ++++ b/modules.d/95nbd/nbdroot.sh +@@ -111,6 +111,10 @@ if [ "$root" = "block:/dev/root" -o "$root" = "dhcp" ]; then + fi + fi + ++if strstr "$(nbd-client --help 2>&1)" "systemd-mark"; then ++ preopts="--systemd-mark $preopts" ++fi ++ + nbd-client $preopts "$nbdserver" $nbdport /dev/nbd0 $opts || exit 1 + + # NBD doesn't emit uevents when it gets connected, so kick it diff --git a/modules.d/95nfs/nfs-lib.sh b/modules.d/95nfs/nfs-lib.sh index 9ced2e6..d5377fe 100755 --- a/modules.d/95nfs/nfs-lib.sh @@ -424,6 +537,56 @@ server="${arg%%:/*}" arg="/${arg##*:/}" fi +diff --git a/modules.d/95resume/module-setup.sh b/modules.d/95resume/module-setup.sh +index ceb7855..b1b4684 100755 +--- a/modules.d/95resume/module-setup.sh ++++ b/modules.d/95resume/module-setup.sh +@@ -17,12 +17,12 @@ check() { + + # called by dracut + cmdline() { +- local _activated +- declare -A _activated ++ local _resume + + for dev in "${!host_fs_types[@]}"; do + [[ ${host_fs_types[$dev]} =~ ^(swap|swsuspend|swsupend)$ ]] || continue +- printf "resume=%s " "$(shorten_persistent_dev "$(get_persistent_dev "$dev")")" ++ _resume=$(shorten_persistent_dev "$(get_persistent_dev "$dev")") ++ [[ -n ${_resume} ]] && printf " resume=%s" "${_resume}" + done + } + +diff --git a/modules.d/95resume/parse-resume.sh b/modules.d/95resume/parse-resume.sh +index d7b2d7f..6ab59c3 100755 +--- a/modules.d/95resume/parse-resume.sh ++++ b/modules.d/95resume/parse-resume.sh +@@ -70,9 +70,10 @@ if ! getarg noresume; then + printf '[ -e "%s" ] && { ln -s "%s" /dev/resume; rm -f -- "$job" "%s/initqueue/timeout/resume.sh"; }\n' \ + "$resume" "$resume" "$hookdir" >> $hookdir/initqueue/settled/resume.sh + +- printf -- "%s" 'warn "Cancelling resume operation. Device not found.";' +- printf -- ' cancel_wait_for_dev /dev/resume; rm -f -- "$job" "%s/initqueue/settled/resume.sh";\n' \ +- "$hookdir" >> $hookdir/initqueue/timeout/resume.sh ++ { ++ printf -- "%s" 'warn "Cancelling resume operation. Device not found.";' ++ printf -- ' cancel_wait_for_dev /dev/resume; rm -f -- "$job" "%s/initqueue/settled/resume.sh";\n' "$hookdir" ++ } >> $hookdir/initqueue/timeout/resume.sh + + mv /lib/dracut/resume.sh /lib/dracut/hooks/pre-mount/10-resume.sh + else +diff --git a/modules.d/95udev-rules/module-setup.sh b/modules.d/95udev-rules/module-setup.sh +index 2d36712..fab4ffc 100755 +--- a/modules.d/95udev-rules/module-setup.sh ++++ b/modules.d/95udev-rules/module-setup.sh +@@ -32,6 +32,7 @@ install() { + 60-pcmcia.rules \ + 50-udev.rules 95-late.rules \ + 50-firmware.rules \ ++ 59-scsi-sg3_utils.rules \ + 75-net-description.rules \ + 80-net-name-slot.rules 80-net-setup-link.rules \ + "$moddir/59-persistent-storage.rules" \ diff --git a/modules.d/98systemd/dracut-initqueue.service b/modules.d/98systemd/dracut-initqueue.service index 03dcc4e..1b9e701 100644 --- a/modules.d/98systemd/dracut-initqueue.service @@ -437,8 +600,21 @@ After=systemd-udev-trigger.service Wants=systemd-udev-trigger.service ConditionPathExists=/etc/initrd-release +diff --git a/modules.d/98systemd/dracut-pre-pivot.service b/modules.d/98systemd/dracut-pre-pivot.service +index 6db1f2c..d7c7b1d 100644 +--- a/modules.d/98systemd/dracut-pre-pivot.service ++++ b/modules.d/98systemd/dracut-pre-pivot.service +@@ -13,6 +13,8 @@ Documentation=man:dracut-pre-pivot.service(8) + After=initrd.target initrd-parse-etc.service sysroot.mount + After=dracut-initqueue.service dracut-pre-mount.service dracut-mount.service + Before=initrd-cleanup.service ++Wants=remote-fs.target ++After=remote-fs.target + ConditionPathExists=/etc/initrd-release + ConditionDirectoryNotEmpty=|/lib/dracut/hooks/pre-pivot + ConditionDirectoryNotEmpty=|/lib/dracut/hooks/cleanup diff --git a/modules.d/98systemd/module-setup.sh b/modules.d/98systemd/module-setup.sh -index c72aad4..e7bf73b 100755 +index c72aad4..cf1b2e7 100755 --- a/modules.d/98systemd/module-setup.sh +++ b/modules.d/98systemd/module-setup.sh @@ -44,6 +44,7 @@ install() { @@ -449,8 +625,17 @@ \ $systemdsystemunitdir/cryptsetup.target \ $systemdsystemunitdir/emergency.target \ +@@ -191,7 +192,7 @@ install() { + inst_script "$moddir/dracut-mount.sh" /bin/dracut-mount + inst_script "$moddir/dracut-pre-pivot.sh" /bin/dracut-pre-pivot + +- inst_script "$moddir/rootfs-generator.sh" /lib/systemd/system-generators/dracut-rootfs-generator ++ inst_script "$moddir/rootfs-generator.sh" $systemdutildir/system-generators/dracut-rootfs-generator + + inst_binary true + ln_r $(type -P true) "/usr/bin/loginctl" diff --git a/modules.d/99base/dracut-lib.sh b/modules.d/99base/dracut-lib.sh -index e4d7da8..127287c 100755 +index e4d7da8..33f7678 100755 --- a/modules.d/99base/dracut-lib.sh +++ b/modules.d/99base/dracut-lib.sh @@ -20,19 +20,33 @@ debug_on() { @@ -514,6 +699,25 @@ server="${arg%%:/*}" arg="/${arg##*:/}" fi +@@ -969,6 +983,7 @@ if ! command -v pidof >/dev/null 2>/dev/null; then + local _cmd + local _exe + local _rl ++ local _ret=1 + local i + _cmd="$1" + [ -z "$_cmd" ] && return 1 +@@ -983,8 +998,9 @@ if ! command -v pidof >/dev/null 2>/dev/null; then + fi + i=${i%/exe} + echo ${i##/proc/} ++ _ret=0 + done +- return 0 ++ return $_ret + } + fi + diff --git a/modules.d/99base/init.sh b/modules.d/99base/init.sh index 2364f4f..a1232eb 100755 --- a/modules.d/99base/init.sh -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@hilbert.suse.de