dracut-034-70.git20131216

- fixed systemd password waiting
- split out fcoe uefi
- fixed lvm thin tools check
This commit is contained in:
Harald Hoyer 2013-12-17 10:26:58 +01:00
parent 4734ecf5fb
commit 30adad218e
9 changed files with 311 additions and 1 deletions

21
0062-TODO-update.patch Normal file
View File

@ -0,0 +1,21 @@
From ce052202f0cdb673536999a7d7810bd3a3a2aaca Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Thu, 5 Dec 2013 18:38:23 +0100
Subject: [PATCH] TODO: update
---
TODO | 1 +
1 file changed, 1 insertion(+)
diff --git a/TODO b/TODO
index 4e52fbf..875541d 100644
--- a/TODO
+++ b/TODO
@@ -22,6 +22,7 @@ INITRAMFS TODO
GENERATOR TODO
+- report errors on missing files in check()
- remove wait for swap devs, if no "resume=" is given on the kernel command line
- add presets (predefined set of modules)
- add interpreter/plugin-scripts to be sourced at the beginning or end (can use dracut-functions)

View File

@ -0,0 +1,25 @@
From 3934ca8e6c0e80ecb32a2ed9403321afd510842e Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Thu, 5 Dec 2013 18:38:35 +0100
Subject: [PATCH] systemd/dracut-initqueue.sh: fixed waiting in the loop if PW
asked
continue the main loop instead of the for loop, if a password is
currently asked
---
modules.d/98systemd/dracut-initqueue.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/modules.d/98systemd/dracut-initqueue.sh b/modules.d/98systemd/dracut-initqueue.sh
index 64e8154..1e05dcd 100755
--- a/modules.d/98systemd/dracut-initqueue.sh
+++ b/modules.d/98systemd/dracut-initqueue.sh
@@ -53,7 +53,7 @@ while :; do
sleep 0.5
for i in /run/systemd/ask-password/ask.*; do
- [ -e "$i" ] && continue
+ [ -e "$i" ] && continue 2
done
if [ $main_loop -gt $((2*$RDRETRY/3)) ]; then

View File

@ -0,0 +1,22 @@
From f11712ea2189e01004115702a3756b70122c3b05 Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Tue, 10 Dec 2013 12:58:37 +0100
Subject: [PATCH] base/rdsosreport.sh: add "ip a" output
---
modules.d/99base/rdsosreport.sh | 2 ++
1 file changed, 2 insertions(+)
diff --git a/modules.d/99base/rdsosreport.sh b/modules.d/99base/rdsosreport.sh
index bfa55bb..5e11166 100755
--- a/modules.d/99base/rdsosreport.sh
+++ b/modules.d/99base/rdsosreport.sh
@@ -42,6 +42,8 @@ command -v dmsetup >/dev/null 2>/dev/null && dmsetup ls --tree
cat /proc/mdstat
+command -v ip >/dev/null 2>/dev/null && ip addr
+
if command -v journalctl >/dev/null 2>/dev/null; then
journalctl -ab --no-pager -o short-monotonic
else

View File

@ -0,0 +1,25 @@
From ded4c82acedb373ed4393b69a9683c6bee38ff48 Mon Sep 17 00:00:00 2001
From: Alexander Tsoy <alexander@tsoy.me>
Date: Thu, 21 Nov 2013 20:33:38 +0400
Subject: [PATCH] usrmount: always install
/usr should be mounted by initramfs even if /sbin/init lives in /
---
modules.d/98usrmount/module-setup.sh | 3 ---
1 file changed, 3 deletions(-)
diff --git a/modules.d/98usrmount/module-setup.sh b/modules.d/98usrmount/module-setup.sh
index d8a0ec2..31a6229 100755
--- a/modules.d/98usrmount/module-setup.sh
+++ b/modules.d/98usrmount/module-setup.sh
@@ -4,10 +4,7 @@
# called by dracut
check() {
- local _init
[[ $mount_needs ]] && return 1
- _init=$(readlink -f /sbin/init)
- [[ "$_init" == "${_init##/usr}" ]] && return 255
return 0
}

View File

@ -0,0 +1,57 @@
From ab173bb4c1c758d2f87d11b03efca6b6c950225e Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Thu, 12 Dec 2013 09:20:53 +0100
Subject: [PATCH] fcoe: move uefi parsing to fcoe-uefi module
---
modules.d/95fcoe-uefi/module-setup.sh | 22 ++++++++++++++++++++++
.../{95fcoe => 95fcoe-uefi}/parse-uefifcoe.sh | 0
modules.d/95fcoe/module-setup.sh | 1 -
3 files changed, 22 insertions(+), 1 deletion(-)
create mode 100755 modules.d/95fcoe-uefi/module-setup.sh
rename modules.d/{95fcoe => 95fcoe-uefi}/parse-uefifcoe.sh (100%)
diff --git a/modules.d/95fcoe-uefi/module-setup.sh b/modules.d/95fcoe-uefi/module-setup.sh
new file mode 100755
index 0000000..007aa59
--- /dev/null
+++ b/modules.d/95fcoe-uefi/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() {
+ [[ $hostonly ]] || [[ $mount_needs ]] && return 1
+
+ return 0
+}
+
+# called by dracut
+depends() {
+ echo fcoe bash
+ return 0
+}
+
+# called by dracut
+install() {
+ inst_hook cmdline 20 "$moddir/parse-uefifcoe.sh"
+}
+
diff --git a/modules.d/95fcoe/parse-uefifcoe.sh b/modules.d/95fcoe-uefi/parse-uefifcoe.sh
similarity index 100%
rename from modules.d/95fcoe/parse-uefifcoe.sh
rename to modules.d/95fcoe-uefi/parse-uefifcoe.sh
diff --git a/modules.d/95fcoe/module-setup.sh b/modules.d/95fcoe/module-setup.sh
index 7ada2ee..2605fa0 100755
--- a/modules.d/95fcoe/module-setup.sh
+++ b/modules.d/95fcoe/module-setup.sh
@@ -36,7 +36,6 @@ install() {
inst "$moddir/fcoe-up.sh" "/sbin/fcoe-up"
inst "$moddir/fcoe-edd.sh" "/sbin/fcoe-edd"
inst "$moddir/fcoe-genrules.sh" "/sbin/fcoe-genrules.sh"
- inst_hook cmdline 20 "$moddir/parse-uefifcoe.sh"
inst_hook cmdline 99 "$moddir/parse-fcoe.sh"
dracut_need_initqueue
}

View File

@ -0,0 +1,92 @@
From 89031be3735045ae06d560bf4f42ec58d889fe8e Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Thu, 12 Dec 2013 09:49:06 +0100
Subject: [PATCH] move uefi-lib to a seperate module
---
modules.d/95fcoe-uefi/module-setup.sh | 4 +---
modules.d/95fcoe/module-setup.sh | 5 -----
modules.d/99base/module-setup.sh | 1 -
modules.d/99uefi-lib/module-setup.sh | 19 +++++++++++++++++++
modules.d/{99base => 99uefi-lib}/uefi-lib.sh | 0
5 files changed, 20 insertions(+), 9 deletions(-)
create mode 100755 modules.d/99uefi-lib/module-setup.sh
rename modules.d/{99base => 99uefi-lib}/uefi-lib.sh (100%)
diff --git a/modules.d/95fcoe-uefi/module-setup.sh b/modules.d/95fcoe-uefi/module-setup.sh
index 007aa59..653d88e 100755
--- a/modules.d/95fcoe-uefi/module-setup.sh
+++ b/modules.d/95fcoe-uefi/module-setup.sh
@@ -4,14 +4,12 @@
# called by dracut
check() {
- [[ $hostonly ]] || [[ $mount_needs ]] && return 1
-
return 0
}
# called by dracut
depends() {
- echo fcoe bash
+ echo fcoe uefi-lib
return 0
}
diff --git a/modules.d/95fcoe/module-setup.sh b/modules.d/95fcoe/module-setup.sh
index 2605fa0..539c464 100755
--- a/modules.d/95fcoe/module-setup.sh
+++ b/modules.d/95fcoe/module-setup.sh
@@ -4,11 +4,6 @@
# called by dracut
check() {
- # FIXME
- # If hostonly was requested, fail the check until we have some way of
- # knowing we are booting from FCoE
- [[ $hostonly ]] || [[ $mount_needs ]] && return 1
-
for i in dcbtool fipvlan lldpad ip readlink; do
type -P $i >/dev/null || return 1
done
diff --git a/modules.d/99base/module-setup.sh b/modules.d/99base/module-setup.sh
index e53cf2e..d4dbca9 100755
--- a/modules.d/99base/module-setup.sh
+++ b/modules.d/99base/module-setup.sh
@@ -45,7 +45,6 @@ install() {
mkdir -p ${initdir}/tmp
inst_simple "$moddir/dracut-lib.sh" "/lib/dracut-lib.sh"
- inst_simple "$moddir/uefi-lib.sh" "/lib/uefi-lib.sh"
if ! dracut_module_included "systemd"; then
inst_multiple switch_root || dfatal "Failed to install switch_root"
diff --git a/modules.d/99uefi-lib/module-setup.sh b/modules.d/99uefi-lib/module-setup.sh
new file mode 100755
index 0000000..4a856ea
--- /dev/null
+++ b/modules.d/99uefi-lib/module-setup.sh
@@ -0,0 +1,19 @@
+#!/bin/bash
+# module-setup for img-lib
+
+# called by dracut
+check() {
+ return 255
+}
+
+# called by dracut
+depends() {
+ echo bash
+ return 0
+}
+
+# called by dracut
+install() {
+ inst_simple "$moddir/uefi-lib.sh" "/lib/uefi-lib.sh"
+}
+
diff --git a/modules.d/99base/uefi-lib.sh b/modules.d/99uefi-lib/uefi-lib.sh
similarity index 100%
rename from modules.d/99base/uefi-lib.sh
rename to modules.d/99uefi-lib/uefi-lib.sh

View File

@ -0,0 +1,31 @@
From 831625d29ed6f174b276cd738e34bfebc5052e1c Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Fri, 13 Dec 2013 11:05:39 +0100
Subject: [PATCH] lvm: fixed lvm thin check
---
modules.d/90lvm/module-setup.sh | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/modules.d/90lvm/module-setup.sh b/modules.d/90lvm/module-setup.sh
index 1206310..a64e5d6 100755
--- a/modules.d/90lvm/module-setup.sh
+++ b/modules.d/90lvm/module-setup.sh
@@ -99,9 +99,16 @@ install() {
if [[ $hostonly ]] && type -P lvs &>/dev/null; then
for dev in "${!host_fs_types[@]}"; do
- if [[ "$(lvs --noheadings -o segtype "$dev" 2>/dev/null)" == *thin* ]] ; then
+ [ -e /sys/block/${dev#/dev/}/dm/name ] || continue
+ dev=$(</sys/block/${dev#/dev/}/dm/name)
+ eval $(dmsetup splitname --nameprefixes --noheadings --rows "$dev" 2>/dev/null)
+ [[ ${DM_VG_NAME} ]] && [[ ${DM_LV_NAME} ]] || continue
+ if [[ "$(lvs --noheadings -o segtype ${DM_VG_NAME} 2>/dev/null)" == *thin* ]] ; then
inst_multiple -o thin_dump thin_restore thin_check thin_repair
+ break
fi
done
+ else
+ inst_multiple -o thin_dump thin_restore thin_check thin_repair
fi
}

View File

@ -0,0 +1,22 @@
From 08f06c93419aacac9d9980fa9c0c65d15fa4bf0e Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Mon, 16 Dec 2013 12:30:26 +0100
Subject: [PATCH] dracut.spec: add 95fcoe-uefi and 99uefi-lib
---
dracut.spec | 2 ++
1 file changed, 2 insertions(+)
diff --git a/dracut.spec b/dracut.spec
index bd35aa7..6cc60e1 100644
--- a/dracut.spec
+++ b/dracut.spec
@@ -414,6 +414,8 @@ rm -rf -- $RPM_BUILD_ROOT
%{dracutlibdir}/modules.d/95ssh-client
%{dracutlibdir}/modules.d/45ifcfg
%{dracutlibdir}/modules.d/95znet
+%{dracutlibdir}/modules.d/95fcoe-uefi
+%{dracutlibdir}/modules.d/99uefi-lib
%if 0%{?fedora} || 0%{?rhel} || 0%{?suse_version}
%files fips

View File

@ -10,7 +10,7 @@
Name: dracut
Version: 034
Release: 62.git20131205%{?dist}
Release: 70.git20131216%{?dist}
Summary: Initramfs generator using udev
%if 0%{?fedora} || 0%{?rhel}
@ -90,6 +90,14 @@ Patch58: 0058-lvm-install-thin-tools-only-when-needed-in-hostonly.patch
Patch59: 0059-i18n-introduce-i18n_install_all-to-install-everythin.patch
Patch60: 0060-dracut.spec-add-new-modules.patch
Patch61: 0061-dracut.spec-remove-suse-man-pages.patch
Patch62: 0062-TODO-update.patch
Patch63: 0063-systemd-dracut-initqueue.sh-fixed-waiting-in-the-loo.patch
Patch64: 0064-base-rdsosreport.sh-add-ip-a-output.patch
Patch65: 0065-usrmount-always-install.patch
Patch66: 0066-fcoe-move-uefi-parsing-to-fcoe-uefi-module.patch
Patch67: 0067-move-uefi-lib-to-a-seperate-module.patch
Patch68: 0068-lvm-fixed-lvm-thin-check.patch
Patch69: 0069-dracut.spec-add-95fcoe-uefi-and-99uefi-lib.patch
BuildRequires: bash git
@ -476,6 +484,8 @@ rm -rf -- $RPM_BUILD_ROOT
%{dracutlibdir}/modules.d/95ssh-client
%{dracutlibdir}/modules.d/45ifcfg
%{dracutlibdir}/modules.d/95znet
%{dracutlibdir}/modules.d/95fcoe-uefi
%{dracutlibdir}/modules.d/99uefi-lib
%if 0%{?fedora} || 0%{?rhel} || 0%{?suse_version}
%files fips
@ -515,6 +525,11 @@ rm -rf -- $RPM_BUILD_ROOT
%endif
%changelog
* Mon Dec 16 2013 Harald Hoyer <harald@redhat.com> 034-70.git20131216
- fixed systemd password waiting
- split out fcoe uefi
- fixed lvm thin tools check
* Thu Dec 05 2013 Harald Hoyer <harald@redhat.com> 034-62.git20131205
- fixed PATH shortener
- also install /etc/system-fips in the initramfs