[dracut] dracut-027-81.git20130531

Harald Hoyer harald at fedoraproject.org
Fri May 31 08:03:29 UTC 2013


commit 75f812af5977e21057088ed00ca444948001cde8
Author: Harald Hoyer <harald at redhat.com>
Date:   Fri May 31 10:01:36 2013 +0200

    dracut-027-81.git20130531
    
    - fix btrfs mount flags for /usr
    - degrade message about missing tools for stripping
    Resolves: rhbz#958519
    - set environment vars DRACUT_SYSTEMD, NEWROOT in service file
    Resolves: rhbz#963159
    - don't add volatile swap partitions to host_devs
    - add libssl.so.10 to make kdump work with fips mode
    - readd selinux dracut module for kdump
    - url-lib/url-lib.sh: turn off curl globbing
    Resolves: rhbz#907497
    - include btrfs-zero-log in the initramfs
    Resolves: rhbz#963257
    - proper NAME the network interfaces
    Resolves: rhbz#965842
    - install default font latarcyrheb-sun16
    Resolves: rhbz#927564
    - optionally install /etc/pcmcia/config.opts
    Resolves: rhbz#920076
    - fix ONBOOT for slaves, set TYPE=Bond for bonding
    Resolves: rhbz#919001
    - add nvme kernel module
    Resolves: rhbz#910734
    - add xfs_metadump
    - selinux: load_policy script fix
    - add hid-hyperv and hv-vmbus kernel modules
    - add parameter rd.live.squashimg
    Resolves: rhbz#789036 rhbz#782108
    - wait for all required interfaces if "rd.neednet=1"
    Resolves: rhbz#801829
    - lvm: add tools for thin provisioning
    Resolves: rhbz#921235
    - ifcfg/write-ifcfg.sh: fixed ifcfg file generation
    - do not wait for mpath* devices
    Resolves: rhbz#969068

 ...nt-Fix-miss-detection-of-btrfs-subvolumes.patch |   35 ++++
 ...egrade-message-about-missing-tools-for-st.patch |   25 +++
 ...fy-p-as-a-separator-for-dmraid-arrays-RHB.patch |    9 +-
 ...-environment-vars-DRACUT_SYSTEMD-NEWROOT-.patch |  163 ++++++++++++++++
 ...add-volatile-swap-partitions-to-host_devs.patch |   68 +++++++
 ...nctions.sh-clarify-instmods-error-message.patch |   31 +++
 ...le-setup.sh-add-libssl.so.10-to-make-kdum.patch |   28 +++
 0052-Fix-parsing-command-line-arguments.patch      |   24 +++
 0053-Introduce-stricter-type-correctness.patch     |   53 +++++
 ...Use-consistiently-termination-code-macros.patch |   34 ++++
 ...lways-check-the-return-number-of-asprintf.patch |  144 ++++++++++++++
 0056-Fix-memory-leak.patch                         |   22 ++
 ...-put-selinux-for-kdump-crash-file-context.patch |   35 ++++
 ...url-lib-url-lib.sh-turn-off-curl-globbing.patch |   32 +++
 ...s-include-btrfs-zero-log-in-the-initramfs.patch |   23 +++
 ...write-ifcfg.sh-proper-NAME-the-interfaces.patch |   41 ++++
 ...rovide-a-hostname-fallback-function-in-ca.patch |   22 ++
 ...gency.service-do-not-start-for-action_on_.patch |   22 ++
 ...-setup.sh-install-default-font-latarcyrhe.patch |   22 ++
 ...module-setup.sh-install-loop-kernel-modul.patch |   24 +++
 ...module-setup.sh-optionally-install-etc-pc.patch |   24 +++
 0066-ifcfg-write-ifcfg.sh.patch                    |   71 +++++++
 ...les-module-setup.sh-add-nvme-kernel-modul.patch |   25 +++
 0068-fs-lib-module-setup.sh-add-xfs_metadump.patch |   31 +++
 ...-lib.sh-Let-user-specify-the-action-after.patch |   35 ++++
 ...provides-udev-rule-and-initialization-scr.patch |   82 ++++++++
 0071-selinux-load_policy-script-fix.patch          |   39 ++++
 ...-lib.sh-export-DRACUT_SYSTEMD-and-NEWROOT.patch |   23 +++
 ...les-module-setup.sh-add-hid-hyperv-and-hv.patch |   22 ++
 ...ve-dmsquash-live-root.sh-add-parameter-rd.patch |   40 ++++
 ...rgency.service-do-not-run-for-action_on_f.patch |   23 +++
 ...t-for-all-required-interfaces-if-rd.needn.patch |   69 +++++++
 0077-lvm-add-tools-for-thin-provisioning.patch     |   53 +++++
 0078-ifcfg-write-ifcfg.sh-fixed-logic.patch        |  204 ++++++++++++++++++++
 ...tions.sh-get_persistent_dev-fix-case-for-.patch |   25 +++
 ...ve-dmsquash-live-root.sh-fixup-32214acb3a.patch |   22 ++
 dracut.spec                                        |   81 +++++++-
 37 files changed, 1713 insertions(+), 13 deletions(-)
---
diff --git a/0045-usrmount-Fix-miss-detection-of-btrfs-subvolumes.patch b/0045-usrmount-Fix-miss-detection-of-btrfs-subvolumes.patch
new file mode 100644
index 0000000..1521d6e
--- /dev/null
+++ b/0045-usrmount-Fix-miss-detection-of-btrfs-subvolumes.patch
@@ -0,0 +1,35 @@
+From d57b8833c43d297004d8393d8e54a2ab2655a899 Mon Sep 17 00:00:00 2001
+From: Colin Guthrie <colin at mageia.org>
+Date: Fri, 3 May 2013 17:16:05 +0100
+Subject: [PATCH] usrmount: Fix miss-detection of btrfs subvolumes.
+
+This causes the root FS options to be incorrectly applied to to /usr
+In some cases this can cause boot failure e.g. due to and XFS /usr
+not supporting the 'acl' option from the ext4 root FS.
+
+https://bugs.mageia.org/show_bug.cgi?id=9884
+---
+ modules.d/98usrmount/mount-usr.sh | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/modules.d/98usrmount/mount-usr.sh b/modules.d/98usrmount/mount-usr.sh
+index a4a66ae..de7dcc2 100755
+--- a/modules.d/98usrmount/mount-usr.sh
++++ b/modules.d/98usrmount/mount-usr.sh
+@@ -61,14 +61,14 @@ mount_usr()
+                 LABEL=*)
+                     _dev="$(echo $_dev | sed 's,/,\\x2f,g')"
+                     _dev="/dev/disk/by-label/${_dev#LABEL=}"
+-		    ;;
++                    ;;
+                 UUID=*)
+                     _dev="${_dev#block:}"
+                     _dev="/dev/disk/by-uuid/${_dev#UUID=}"
+                     ;;
+             esac
+             if strstr "$_opts" "subvol=" && \
+-                [ "${root#block:}" -ef $_dev ]
++                [ "${root#block:}" -ef $_dev ] && \
+                 [ -n "$rflags" ]; then
+                 # for btrfs subvolumes we have to mount /usr with the same rflags
+                 rflags=$(filtersubvol "$rflags")
diff --git a/0046-dracut.sh-degrade-message-about-missing-tools-for-st.patch b/0046-dracut.sh-degrade-message-about-missing-tools-for-st.patch
new file mode 100644
index 0000000..63cbb9e
--- /dev/null
+++ b/0046-dracut.sh-degrade-message-about-missing-tools-for-st.patch
@@ -0,0 +1,25 @@
+From fefd3f66f9802f3309c44f45e4959e5fa6683a07 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Mon, 6 May 2013 14:06:29 +0200
+Subject: [PATCH] dracut.sh: degrade message about missing tools for stripping
+
+warning -> info
+
+https://bugzilla.redhat.com/show_bug.cgi?id=958519
+---
+ dracut.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/dracut.sh b/dracut.sh
+index 5f0a1b3..88b0645 100755
+--- a/dracut.sh
++++ b/dracut.sh
+@@ -1162,7 +1162,7 @@ fi
+ if [[ $do_strip = yes ]] ; then
+     for p in strip xargs find; do
+         if ! type -P $p >/dev/null; then
+-            dwarn "Could not find '$p'. Not stripping the initramfs."
++            dinfo "Could not find '$p'. Not stripping the initramfs."
+             do_strip=no
+         fi
+     done
diff --git a/0045-don-t-specify-p-as-a-separator-for-dmraid-arrays-RHB.patch b/0047-don-t-specify-p-as-a-separator-for-dmraid-arrays-RHB.patch
similarity index 89%
rename from 0045-don-t-specify-p-as-a-separator-for-dmraid-arrays-RHB.patch
rename to 0047-don-t-specify-p-as-a-separator-for-dmraid-arrays-RHB.patch
index 0d7b94f..85eeca9 100644
--- a/0045-don-t-specify-p-as-a-separator-for-dmraid-arrays-RHB.patch
+++ b/0047-don-t-specify-p-as-a-separator-for-dmraid-arrays-RHB.patch
@@ -1,8 +1,8 @@
-From 96dd416ac2ea8ea0f5bbbdce2abafbbce84f0ad6 Mon Sep 17 00:00:00 2001
+From 8d7c07f191524f2ac59e3083910db985fa4bbcd5 Mon Sep 17 00:00:00 2001
 From: Adam Williamson <awilliam at redhat.com>
 Date: Wed, 22 May 2013 13:56:58 -0700
-Subject: [PATCH 45/45] don't specify "p" as a separator for dmraid arrays
- (RHBZ #966162)
+Subject: [PATCH] don't specify "p" as a separator for dmraid arrays (RHBZ
+ #966162)
 
 As per RHBZ #966162, parted stopped unconditionally using "p" as a
 separator for dmraid device names in version 3.1, so other things need
@@ -33,6 +33,3 @@ index 68e0515..3753ddd 100755
          done
      fi
  
--- 
-1.8.2.1
-
diff --git a/0048-systemd-set-environment-vars-DRACUT_SYSTEMD-NEWROOT-.patch b/0048-systemd-set-environment-vars-DRACUT_SYSTEMD-NEWROOT-.patch
new file mode 100644
index 0000000..f42ecba
--- /dev/null
+++ b/0048-systemd-set-environment-vars-DRACUT_SYSTEMD-NEWROOT-.patch
@@ -0,0 +1,163 @@
+From 780cb337416a21b000353d1f2dbb362690265b3b Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Tue, 28 May 2013 12:50:57 +0200
+Subject: [PATCH] systemd: set environment vars DRACUT_SYSTEMD, NEWROOT in
+ service file
+
+---
+ modules.d/98systemd/dracut-cmdline.service     | 2 ++
+ modules.d/98systemd/dracut-cmdline.sh          | 2 --
+ modules.d/98systemd/dracut-emergency.service   | 2 ++
+ modules.d/98systemd/dracut-initqueue.service   | 2 ++
+ modules.d/98systemd/dracut-mount.service       | 2 ++
+ modules.d/98systemd/dracut-pre-mount.service   | 2 ++
+ modules.d/98systemd/dracut-pre-pivot.service   | 2 ++
+ modules.d/98systemd/dracut-pre-trigger.service | 2 ++
+ modules.d/98systemd/dracut-pre-udev.service    | 2 ++
+ modules.d/98systemd/emergency.service          | 2 ++
+ modules.d/98systemd/rescue.service             | 2 ++
+ 11 files changed, 20 insertions(+), 2 deletions(-)
+
+diff --git a/modules.d/98systemd/dracut-cmdline.service b/modules.d/98systemd/dracut-cmdline.service
+index 33a37f9..07f6939 100644
+--- a/modules.d/98systemd/dracut-cmdline.service
++++ b/modules.d/98systemd/dracut-cmdline.service
+@@ -23,6 +23,8 @@ ConditionKernelCommandLine=|resume
+ ConditionKernelCommandLine=|noresume
+ 
+ [Service]
++Environment=DRACUT_SYSTEMD=1
++Environment=NEWROOT=/sysroot
+ Type=oneshot
+ ExecStart=-/bin/dracut-cmdline
+ StandardInput=null
+diff --git a/modules.d/98systemd/dracut-cmdline.sh b/modules.d/98systemd/dracut-cmdline.sh
+index ad51142..a6738bd 100755
+--- a/modules.d/98systemd/dracut-cmdline.sh
++++ b/modules.d/98systemd/dracut-cmdline.sh
+@@ -2,8 +2,6 @@
+ # -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
+ # ex: ts=8 sw=4 sts=4 et filetype=sh
+ 
+-export DRACUT_SYSTEMD=1
+-export NEWROOT="/sysroot"
+ [ -d $NEWROOT ] || mkdir -p -m 0755 $NEWROOT
+ [ -d /run/initramfs ] || mkdir -p -m 0755 /run/initramfs
+ [ -d /run/lock ] || mkdir -p -m 0755 /run/lock
+diff --git a/modules.d/98systemd/dracut-emergency.service b/modules.d/98systemd/dracut-emergency.service
+index 153931b..12eef6c 100644
+--- a/modules.d/98systemd/dracut-emergency.service
++++ b/modules.d/98systemd/dracut-emergency.service
+@@ -16,6 +16,8 @@ Conflicts=emergency.service emergency.target
+ 
+ [Service]
+ Environment=HOME=/
++Environment=DRACUT_SYSTEMD=1
++Environment=NEWROOT=/sysroot
+ WorkingDirectory=/
+ ExecStart=/bin/dracut-emergency
+ ExecStopPost=-/bin/rm -f /.console_lock
+diff --git a/modules.d/98systemd/dracut-initqueue.service b/modules.d/98systemd/dracut-initqueue.service
+index c19cfea..f4c1dd4 100644
+--- a/modules.d/98systemd/dracut-initqueue.service
++++ b/modules.d/98systemd/dracut-initqueue.service
+@@ -19,6 +19,8 @@ ConditionPathExistsGlob=|/lib/dracut/hooks/initqueue/*.sh
+ ConditionKernelCommandLine=|rd.break=pre-mount
+ 
+ [Service]
++Environment=DRACUT_SYSTEMD=1
++Environment=NEWROOT=/sysroot
+ Type=oneshot
+ ExecStart=-/bin/dracut-initqueue
+ StandardInput=null
+diff --git a/modules.d/98systemd/dracut-mount.service b/modules.d/98systemd/dracut-mount.service
+index db18f86..20c633d 100644
+--- a/modules.d/98systemd/dracut-mount.service
++++ b/modules.d/98systemd/dracut-mount.service
+@@ -17,6 +17,8 @@ ConditionDirectoryNotEmpty=|/lib/dracut/hooks/mount
+ ConditionKernelCommandLine=|rd.break=mount
+ 
+ [Service]
++Environment=DRACUT_SYSTEMD=1
++Environment=NEWROOT=/sysroot
+ Type=oneshot
+ ExecStart=-/bin/dracut-mount
+ StandardInput=null
+diff --git a/modules.d/98systemd/dracut-pre-mount.service b/modules.d/98systemd/dracut-pre-mount.service
+index bec3c75..d7be48d 100644
+--- a/modules.d/98systemd/dracut-pre-mount.service
++++ b/modules.d/98systemd/dracut-pre-mount.service
+@@ -19,6 +19,8 @@ ConditionDirectoryNotEmpty=|/lib/dracut/hooks/pre-mount
+ ConditionKernelCommandLine=|rd.break=pre-mount
+ 
+ [Service]
++Environment=DRACUT_SYSTEMD=1
++Environment=NEWROOT=/sysroot
+ Type=oneshot
+ ExecStart=-/bin/dracut-pre-mount
+ StandardInput=null
+diff --git a/modules.d/98systemd/dracut-pre-pivot.service b/modules.d/98systemd/dracut-pre-pivot.service
+index 9d0143c..36394aa 100644
+--- a/modules.d/98systemd/dracut-pre-pivot.service
++++ b/modules.d/98systemd/dracut-pre-pivot.service
+@@ -18,6 +18,8 @@ ConditionDirectoryNotEmpty=|/lib/dracut/hooks/pre-pivot
+ ConditionKernelCommandLine=|rd.break=pre-pivot
+ 
+ [Service]
++Environment=DRACUT_SYSTEMD=1
++Environment=NEWROOT=/sysroot
+ Type=oneshot
+ ExecStart=-/bin/dracut-pre-pivot
+ StandardInput=null
+diff --git a/modules.d/98systemd/dracut-pre-trigger.service b/modules.d/98systemd/dracut-pre-trigger.service
+index e49e405..bb34196 100644
+--- a/modules.d/98systemd/dracut-pre-trigger.service
++++ b/modules.d/98systemd/dracut-pre-trigger.service
+@@ -19,6 +19,8 @@ ConditionDirectoryNotEmpty=|/lib/dracut/hooks/pre-trigger
+ ConditionKernelCommandLine=|rd.break=pre-trigger
+ 
+ [Service]
++Environment=DRACUT_SYSTEMD=1
++Environment=NEWROOT=/sysroot
+ Type=oneshot
+ ExecStart=-/bin/dracut-pre-trigger
+ StandardInput=null
+diff --git a/modules.d/98systemd/dracut-pre-udev.service b/modules.d/98systemd/dracut-pre-udev.service
+index b372373..d125b37 100644
+--- a/modules.d/98systemd/dracut-pre-udev.service
++++ b/modules.d/98systemd/dracut-pre-udev.service
+@@ -22,6 +22,8 @@ ConditionKernelCommandLine=|rd.driver.pre
+ ConditionKernelCommandLine=|rd.driver.post
+ 
+ [Service]
++Environment=DRACUT_SYSTEMD=1
++Environment=NEWROOT=/sysroot
+ Type=oneshot
+ ExecStart=-/bin/dracut-pre-udev
+ StandardInput=null
+diff --git a/modules.d/98systemd/emergency.service b/modules.d/98systemd/emergency.service
+index a932739..35d9c31 100644
+--- a/modules.d/98systemd/emergency.service
++++ b/modules.d/98systemd/emergency.service
+@@ -15,6 +15,8 @@ Wants=systemd-vconsole-setup.service
+ 
+ [Service]
+ Environment=HOME=/
++Environment=DRACUT_SYSTEMD=1
++Environment=NEWROOT=/sysroot
+ WorkingDirectory=/
+ ExecStart=/bin/dracut-emergency
+ ExecStopPost=-/usr/bin/systemctl --fail --no-block default
+diff --git a/modules.d/98systemd/rescue.service b/modules.d/98systemd/rescue.service
+index b5fb663..62f2067 100644
+--- a/modules.d/98systemd/rescue.service
++++ b/modules.d/98systemd/rescue.service
+@@ -13,6 +13,8 @@ DefaultDependencies=no
+ 
+ [Service]
+ Environment=HOME=/
++Environment=DRACUT_SYSTEMD=1
++Environment=NEWROOT=/sysroot
+ WorkingDirectory=/
+ ExecStartPre=-/bin/plymouth quit
+ ExecStart=-/bin/sh -i -l
diff --git a/0049-don-t-add-volatile-swap-partitions-to-host_devs.patch b/0049-don-t-add-volatile-swap-partitions-to-host_devs.patch
new file mode 100644
index 0000000..b88dbd5
--- /dev/null
+++ b/0049-don-t-add-volatile-swap-partitions-to-host_devs.patch
@@ -0,0 +1,68 @@
+From bcfbddefe13d179d553da77cf66ada5e6fd804c8 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Tue, 28 May 2013 13:26:05 +0200
+Subject: [PATCH] don't add volatile swap partitions to host_devs
+
+---
+ TODO      |  1 +
+ dracut.sh | 17 ++++++++++++-----
+ 2 files changed, 13 insertions(+), 5 deletions(-)
+
+diff --git a/TODO b/TODO
+index 9eeedfa..e275324 100644
+--- a/TODO
++++ b/TODO
+@@ -22,6 +22,7 @@ INITRAMFS TODO
+ 
+ GENERATOR TODO
+ 
++- 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)
+ - add mechanism for module specific command line options
+diff --git a/dracut.sh b/dracut.sh
+index 88b0645..7481ac0 100755
+--- a/dracut.sh
++++ b/dracut.sh
+@@ -830,7 +830,7 @@ if [[ $hostonly ]]; then
+     # in hostonly mode, determine all devices, which have to be accessed
+     # and examine them for filesystem types
+ 
+-    push host_mp \
++    for mp in \
+         "/" \
+         "/etc" \
+         "/usr" \
+@@ -838,9 +838,8 @@ if [[ $hostonly ]]; then
+         "/usr/sbin" \
+         "/usr/lib" \
+         "/usr/lib64" \
+-        "/boot"
+-
+-    for mp in "${host_mp[@]}"; do
++        "/boot";
++    do
+         mountpoint "$mp" >/dev/null 2>&1 || continue
+         push host_devs $(readlink -f "/dev/block/$(find_block_device "$mp")")
+     done
+@@ -856,11 +855,19 @@ if [[ $hostonly ]]; then
+             [[ "$_d" == UUID\=* ]] && _d="/dev/disk/by-uuid/${_d#UUID=}"
+             [[ "$_d" == LABEL\=* ]] && _d="/dev/disk/by-label/$_d#LABEL=}"
+             [[ "$_d" -ef "$dev" ]] || continue
++
++            while read _mapper _a _p _o; do
++                [[ $_mapper = \#* ]] && continue
++                [[ "$_d" -ef /dev/mapper/"$_mapper" ]] || continue
++                [[ "$_o" ]] || _o="$_p"
++                # skip mkswap swap
++                [[ $_o == *swap* ]] && continue 2
++            done < /etc/crypttab
++
+             push host_devs $(readlink -f $dev)
+             break
+         done < /etc/fstab
+     done < /proc/swaps
+-
+ fi
+ 
+ _get_fs_type() (
diff --git a/0050-dracut-functions.sh-clarify-instmods-error-message.patch b/0050-dracut-functions.sh-clarify-instmods-error-message.patch
new file mode 100644
index 0000000..2ee07dc
--- /dev/null
+++ b/0050-dracut-functions.sh-clarify-instmods-error-message.patch
@@ -0,0 +1,31 @@
+From 19b5c10963e80cc6899ee4131474c1955754f8c6 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Tue, 28 May 2013 14:25:49 +0200
+Subject: [PATCH] dracut-functions.sh: clarify instmods() error message
+
+---
+ dracut-functions.sh | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/dracut-functions.sh b/dracut-functions.sh
+index 96d3c6e..4a0e81a 100755
+--- a/dracut-functions.sh
++++ b/dracut-functions.sh
+@@ -1608,7 +1608,7 @@ instmods() {
+             while read _mod; do
+                 inst1mod "${_mod%.ko*}" || {
+                     if [[ "$_check" == "yes" ]]; then
+-                        [[ "$_silent" == "no" ]] && dfatal "Failed to install $_mod"
++                        [[ "$_silent" == "no" ]] && dfatal "Failed to install module $_mod"
+                         return 1
+                     fi
+                 }
+@@ -1617,7 +1617,7 @@ instmods() {
+         while (($# > 0)); do  # filenames as arguments
+             inst1mod ${1%.ko*} || {
+                 if [[ "$_check" == "yes" ]]; then
+-                    [[ "$_silent" == "no" ]] && dfatal "Failed to install $1"
++                    [[ "$_silent" == "no" ]] && dfatal "Failed to install module $1"
+                     return 1
+                 fi
+             }
diff --git a/0051-01fips-module-setup.sh-add-libssl.so.10-to-make-kdum.patch b/0051-01fips-module-setup.sh-add-libssl.so.10-to-make-kdum.patch
new file mode 100644
index 0000000..d6bde39
--- /dev/null
+++ b/0051-01fips-module-setup.sh-add-libssl.so.10-to-make-kdum.patch
@@ -0,0 +1,28 @@
+From 15b93069bba031169eeccb8b16fe0382a4bb2968 Mon Sep 17 00:00:00 2001
+From: Baoquan He <bhe at redhat.com>
+Date: Thu, 9 May 2013 16:38:53 +0800
+Subject: [PATCH] 01fips/module-setup.sh: add libssl.so.10 to make kdump work
+ with fips mode
+
+FIPS can work well in 1st kernel, but failed in kdump kernel. the
+libssl.so.10 and related hmac file are needed. Now add it and it
+works.
+
+Signed-off-by: Baoquan He <bhe at redhat.com>
+---
+ modules.d/01fips/module-setup.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules.d/01fips/module-setup.sh b/modules.d/01fips/module-setup.sh
+index a7f5be8..6013318 100755
+--- a/modules.d/01fips/module-setup.sh
++++ b/modules.d/01fips/module-setup.sh
+@@ -38,7 +38,7 @@ install() {
+ 
+     inst_libdir_file libsoftokn3.so libsoftokn3.so \
+         libsoftokn3.chk libfreebl3.so libfreebl3.chk \
+-        libssl.so 'hmaccalc/sha512hmac.hmac'
++        libssl.so 'hmaccalc/sha512hmac.hmac' libssl.so.10
+ 
+     dracut_install -o prelink
+ }
diff --git a/0052-Fix-parsing-command-line-arguments.patch b/0052-Fix-parsing-command-line-arguments.patch
new file mode 100644
index 0000000..7312b85
--- /dev/null
+++ b/0052-Fix-parsing-command-line-arguments.patch
@@ -0,0 +1,24 @@
+From 6a736cc129ed29157a4e5460382d17154f8fc381 Mon Sep 17 00:00:00 2001
+From: Kamil Rytarowski <n54 at gmx.com>
+Date: Sat, 11 May 2013 11:39:46 +0200
+Subject: [PATCH] Fix parsing command line arguments
+
+Adjust correctly the *optstring argument of getopt_long. Add support
+for a missing option -v|--verbose and drop unknown options -D, -I and -L.
+---
+ install/dracut-install.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/install/dracut-install.c b/install/dracut-install.c
+index b4bf681..584a30b 100644
+--- a/install/dracut-install.c
++++ b/install/dracut-install.c
+@@ -619,7 +619,7 @@ static int parse_argv(int argc, char *argv[])
+                 {NULL, 0, NULL, 0}
+         };
+ 
+-        while ((c = getopt_long(argc, argv, "adhloD:DHILR", options, NULL)) != -1) {
++        while ((c = getopt_long(argc, argv, "adhloD:HR", options, NULL)) != -1) {
+                 switch (c) {
+                 case ARG_VERSION:
+                         puts(PROGRAM_VERSION_STRING);
diff --git a/0053-Introduce-stricter-type-correctness.patch b/0053-Introduce-stricter-type-correctness.patch
new file mode 100644
index 0000000..0e768a8
--- /dev/null
+++ b/0053-Introduce-stricter-type-correctness.patch
@@ -0,0 +1,53 @@
+From 599182b10870a826360091246f0a5f26c691f690 Mon Sep 17 00:00:00 2001
+From: Kamil Rytarowski <n54 at gmx.com>
+Date: Sat, 11 May 2013 17:06:45 +0200
+Subject: [PATCH] Introduce stricter type correctness
+
+---
+ install/dracut-install.c | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/install/dracut-install.c b/install/dracut-install.c
+index 584a30b..33fad4a 100644
+--- a/install/dracut-install.c
++++ b/install/dracut-install.c
+@@ -80,9 +80,9 @@ static char *convert_abs_rel(const char *from, const char *target)
+         _cleanup_free_ char *realtarget = NULL;
+         _cleanup_free_ char *target_dir_p = NULL, *realpath_p = NULL;
+         const char *realfrom = from;
+-        int level = 0, fromlevel = 0, targetlevel = 0;
+-        int l, i, rl;
+-        int dirlen;
++        size_t level = 0, fromlevel = 0, targetlevel = 0;
++        int l;
++        size_t i, rl, dirlen;
+ 
+         target_dir_p = strdup(target);
+         if (!target_dir_p)
+@@ -215,7 +215,7 @@ static int cp(const char *src, const char *dst)
+                 if (ret == 0) {
+                         struct timeval tv[2];
+                         if (fchown(dest_desc, sb.st_uid, sb.st_gid) != 0)
+-                                fchown(dest_desc, -1, sb.st_gid);
++                                fchown(dest_desc, (__uid_t)-1, sb.st_gid);
+                         tv[0].tv_sec = sb.st_atime;
+                         tv[0].tv_usec = 0;
+                         tv[1].tv_sec = sb.st_mtime;
+@@ -297,7 +297,7 @@ static int resolve_deps(const char *src)
+                 log_debug("ldd: '%s'", buf);
+ 
+                 if (strstr(buf, "you do not have execution permission")) {
+-                        log_error(buf);
++                        log_error("%s", buf);
+                         ret+=1;
+                         break;
+                 }
+@@ -670,7 +670,7 @@ static int parse_argv(int argc, char *argv[])
+ static int resolve_lazy(int argc, char **argv)
+ {
+         int i;
+-        int destrootdirlen = strlen(destrootdir);
++        size_t destrootdirlen = strlen(destrootdir);
+         int ret = 0;
+         char *item;
+         for (i = 0; i < argc; i++) {
diff --git a/0054-Use-consistiently-termination-code-macros.patch b/0054-Use-consistiently-termination-code-macros.patch
new file mode 100644
index 0000000..689e4b6
--- /dev/null
+++ b/0054-Use-consistiently-termination-code-macros.patch
@@ -0,0 +1,34 @@
+From 8974102f6b4d59a29e01d080262cbbb0a08571d3 Mon Sep 17 00:00:00 2001
+From: Kamil Rytarowski <n54 at gmx.com>
+Date: Sat, 11 May 2013 13:49:00 +0200
+Subject: [PATCH] Use consistiently termination code macros
+
+Operate in install_all and install_one consequently on EXIT_SUCCESS
+and EXIT_FAILURE termination code macros as they are meant to be
+returned from these functions.
+---
+ install/dracut-install.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/install/dracut-install.c b/install/dracut-install.c
+index 33fad4a..0b9502e 100644
+--- a/install/dracut-install.c
++++ b/install/dracut-install.c
+@@ -757,7 +757,7 @@ static char *find_binary(const char *src)
+ 
+ static int install_one(const char *src, const char *dst)
+ {
+-        int r = 0;
++        int r = EXIT_SUCCESS;
+         int ret;
+ 
+         if (strchr(src, '/') == NULL) {
+@@ -786,7 +786,7 @@ static int install_one(const char *src, const char *dst)
+ 
+ static int install_all(int argc, char **argv)
+ {
+-        int r = 0;
++        int r = EXIT_SUCCESS;
+         int i;
+         for (i = 0; i < argc; i++) {
+                 int ret;
diff --git a/0055-Always-check-the-return-number-of-asprintf.patch b/0055-Always-check-the-return-number-of-asprintf.patch
new file mode 100644
index 0000000..4c06740
--- /dev/null
+++ b/0055-Always-check-the-return-number-of-asprintf.patch
@@ -0,0 +1,144 @@
+From d9eff33ce203a9010067a15ddf1d279132abf437 Mon Sep 17 00:00:00 2001
+From: Kamil Rytarowski <n54 at gmx.com>
+Date: Sat, 11 May 2013 14:40:19 +0200
+Subject: [PATCH] Always check the return number of asprintf
+
+asprintf prints to an allocated string. When  successful,  the
+functions return the number of bytes printed. If memory allocation
+wasn't possible, or some other error occurs, the function will return
+-1.
+
+Don't check strp as a result of asprintf, it's content may be undefined.
+
+man 3 asprintf
+---
+ install/dracut-install.c | 59 +++++++++++++++++++++++++++++++++++++++---------
+ 1 file changed, 48 insertions(+), 11 deletions(-)
+
+diff --git a/install/dracut-install.c b/install/dracut-install.c
+index 0b9502e..c8328b0 100644
+--- a/install/dracut-install.c
++++ b/install/dracut-install.c
+@@ -83,6 +83,7 @@ static char *convert_abs_rel(const char *from, const char *target)
+         size_t level = 0, fromlevel = 0, targetlevel = 0;
+         int l;
+         size_t i, rl, dirlen;
++        int ret;
+ 
+         target_dir_p = strdup(target);
+         if (!target_dir_p)
+@@ -103,7 +104,11 @@ static char *convert_abs_rel(const char *from, const char *target)
+         for (i = dirlen+1; i < rl; ++i)
+             if (target_dir_p[i] != '/')
+                 break;
+-        asprintf(&realtarget, "%s/%s", realpath_p, &target_dir_p[i]);
++        ret = asprintf(&realtarget, "%s/%s", realpath_p, &target_dir_p[i]);
++        if (ret < 0) {
++                log_error("Out of memory!");
++                exit(EXIT_FAILURE);
++        }
+ 
+         /* now calculate the relative path from <from> to <target> and
+            store it in <relative_from>
+@@ -282,8 +287,11 @@ static int resolve_deps(const char *src)
+ 
+         /* run ldd */
+         ret = asprintf(&cmd, "ldd %s 2>&1", src);
+-        if (ret < 0)
+-                return ret;
++        if (ret < 0) {
++                log_error("Out of memory!");
++                exit(EXIT_FAILURE);
++        }
++
+         ret = 0;
+ 
+         fptr = popen(cmd, "r");
+@@ -352,6 +360,7 @@ static int hmac_install(const char *src, const char *dst, const char *hmacpath)
+         _cleanup_free_ char *dstpath = strdup(dst);
+         _cleanup_free_ char *srchmacname = NULL;
+         _cleanup_free_ char *dsthmacname = NULL;
++        int ret;
+ 
+         if (!(srcpath && dstpath))
+                 return -ENOMEM;
+@@ -371,11 +380,29 @@ static int hmac_install(const char *src, const char *dst, const char *hmacpath)
+         srcpath[dlen] = '\0';
+         dstpath[dir_len(dst)] = '\0';
+         if (hmacpath) {
+-                asprintf(&srchmacname, "%s/%s.hmac", hmacpath, &src[dlen + 1]);
+-                asprintf(&dsthmacname, "%s/%s.hmac", hmacpath, &src[dlen + 1]);
++                ret = asprintf(&srchmacname, "%s/%s.hmac", hmacpath, &src[dlen + 1]);
++                if (ret < 0) {
++                        log_error("Out of memory!");
++                        exit(EXIT_FAILURE);
++                }
++
++                ret = asprintf(&dsthmacname, "%s/%s.hmac", hmacpath, &src[dlen + 1]);
++                if (ret < 0) {
++                        log_error("Out of memory!");
++                        exit(EXIT_FAILURE);
++                }
+         } else {
+-                asprintf(&srchmacname, "%s/.%s.hmac", srcpath, &src[dlen + 1]);
+-                asprintf(&dsthmacname, "%s/.%s.hmac", dstpath, &src[dlen + 1]);
++                ret = asprintf(&srchmacname, "%s/.%s.hmac", srcpath, &src[dlen + 1]);
++                if (ret < 0) {
++                        log_error("Out of memory!");
++                        exit(EXIT_FAILURE);
++                }
++
++                ret = asprintf(&dsthmacname, "%s/.%s.hmac", dstpath, &src[dlen + 1]);
++                if (ret < 0) {
++                        log_error("Out of memory!");
++                        exit(EXIT_FAILURE);
++                }
+         }
+         log_debug("hmac cp '%s' '%s')", srchmacname, dsthmacname);
+         dracut_install(srchmacname, dsthmacname, false, false, true);
+@@ -428,7 +455,11 @@ static int dracut_install(const char *src, const char *dst, bool isdir, bool res
+ 
+         hashmap_put(items, i, i);
+ 
+-        asprintf(&fulldstpath, "%s%s", destrootdir, dst);
++        ret = asprintf(&fulldstpath, "%s%s", destrootdir, dst);
++        if (ret < 0) {
++                log_error("Out of memory!");
++                exit(EXIT_FAILURE);
++        }
+ 
+         ret = stat(fulldstpath, &sb);
+ 
+@@ -511,7 +542,11 @@ static int dracut_install(const char *src, const char *dst, bool isdir, bool res
+                 if (lstat(fulldstpath, &sb) != 0) {
+                         _cleanup_free_ char *absdestpath = NULL;
+ 
+-                        asprintf(&absdestpath, "%s%s", destrootdir, abspath);
++                        ret = asprintf(&absdestpath, "%s%s", destrootdir, abspath);
++                        if (ret < 0) {
++                                log_error("Out of memory!");
++                                exit(EXIT_FAILURE);
++                        }
+ 
+                         ln_r(absdestpath, fulldstpath);
+                 }
+@@ -704,6 +739,8 @@ static char *find_binary(const char *src)
+         char *p, *q;
+         bool end = false;
+         char *newsrc = NULL;
++        int ret;
++
+         path = getenv("PATH");
+ 
+         if (path == NULL) {
+@@ -730,8 +767,8 @@ static char *find_binary(const char *src)
+                 else
+                         *q = '\0';
+ 
+-                asprintf(&newsrc, "%s/%s", p, src);
+-                if (newsrc == NULL) {
++                ret = asprintf(&newsrc, "%s/%s", p, src);
++                if (ret < 0) {
+                         log_error("Out of memory!");
+                         exit(EXIT_FAILURE);
+                 }
diff --git a/0056-Fix-memory-leak.patch b/0056-Fix-memory-leak.patch
new file mode 100644
index 0000000..ec01dc6
--- /dev/null
+++ b/0056-Fix-memory-leak.patch
@@ -0,0 +1,22 @@
+From e0904b27ff821c067ae62c227db8fef45638a827 Mon Sep 17 00:00:00 2001
+From: Kamil Rytarowski <n54 at gmx.com>
+Date: Sat, 11 May 2013 14:54:38 +0200
+Subject: [PATCH] Fix memory leak
+
+---
+ install/dracut-install.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/install/dracut-install.c b/install/dracut-install.c
+index c8328b0..a1c6461 100644
+--- a/install/dracut-install.c
++++ b/install/dracut-install.c
+@@ -258,7 +258,7 @@ static int resolve_deps(const char *src)
+ {
+         int ret = 0;
+ 
+-        char *buf = malloc(LINE_MAX);
++        _cleanup_free_ char *buf = malloc(LINE_MAX);
+         size_t linesize = LINE_MAX;
+         _cleanup_pclose_ FILE *fptr = NULL;
+         _cleanup_free_ char *cmd = NULL;
diff --git a/0057-dracut.spec-put-selinux-for-kdump-crash-file-context.patch b/0057-dracut.spec-put-selinux-for-kdump-crash-file-context.patch
new file mode 100644
index 0000000..8aa1494
--- /dev/null
+++ b/0057-dracut.spec-put-selinux-for-kdump-crash-file-context.patch
@@ -0,0 +1,35 @@
+From 639bd4873bed9b29967b2ff21b90891d00667f92 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Tue, 28 May 2013 15:40:45 +0200
+Subject: [PATCH] dracut.spec: put selinux for kdump crash file contexts
+
+---
+ dracut.spec | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/dracut.spec b/dracut.spec
+index 3d42af2..a475e08 100644
+--- a/dracut.spec
++++ b/dracut.spec
+@@ -231,7 +231,6 @@ rm -fr $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/50gensplash
+ rm -fr $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/96securityfs
+ rm -fr $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/97masterkey
+ rm -fr $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/98integrity
+-rm -fr $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/98selinux
+ %endif
+ 
+ mkdir -p $RPM_BUILD_ROOT/boot/dracut
+@@ -348,12 +347,12 @@ rm -rf $RPM_BUILD_ROOT
+ %if %{undefined _unitdir}
+ %{dracutlibdir}/modules.d/96securityfs
+ %{dracutlibdir}/modules.d/97masterkey
+-%{dracutlibdir}/modules.d/98selinux
+ %{dracutlibdir}/modules.d/98integrity
+ %endif
+ %{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
diff --git a/0058-url-lib-url-lib.sh-turn-off-curl-globbing.patch b/0058-url-lib-url-lib.sh-turn-off-curl-globbing.patch
new file mode 100644
index 0000000..7e0fd22
--- /dev/null
+++ b/0058-url-lib-url-lib.sh-turn-off-curl-globbing.patch
@@ -0,0 +1,32 @@
+From 1b8616adeec0e397f8485496d80b70c4368a9c4b Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Tue, 28 May 2013 16:15:24 +0200
+Subject: [PATCH] url-lib/url-lib.sh: turn off curl globbing
+
+https://bugzilla.redhat.com/show_bug.cgi?id=907497
+---
+ modules.d/45url-lib/url-lib.sh | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/modules.d/45url-lib/url-lib.sh b/modules.d/45url-lib/url-lib.sh
+index 4a3d56d..c00ca18 100755
+--- a/modules.d/45url-lib/url-lib.sh
++++ b/modules.d/45url-lib/url-lib.sh
+@@ -54,7 +54,7 @@ add_url_handler() {
+ 
+ export CURL_HOME="/run/initramfs/url-lib"
+ mkdir -p $CURL_HOME
+-curl_args="--location --retry 3 --fail --show-error"
++curl_args="--globoff --location --retry 3 --fail --show-error"
+ getargbool 0 rd.noverifyssl && curl_args="$curl_args --insecure"
+ 
+ proxy=$(getarg proxy=)
+@@ -64,7 +64,7 @@ curl_fetch_url() {
+     local url="$1" outloc="$2"
+     echo "$url" > /proc/self/fd/0
+     if [ -n "$outloc" ]; then
+-        curl --globoff $curl_args --output "$outloc" "$url" || return $?
++        curl $curl_args --output "$outloc" "$url" || return $?
+     else
+         local outdir="$(mkuniqdir /tmp curl_fetch_url)"
+         ( cd "$outdir"; curl $curl_args --remote-name "$url" || return $? )
diff --git a/0059-btrfs-include-btrfs-zero-log-in-the-initramfs.patch b/0059-btrfs-include-btrfs-zero-log-in-the-initramfs.patch
new file mode 100644
index 0000000..f292928
--- /dev/null
+++ b/0059-btrfs-include-btrfs-zero-log-in-the-initramfs.patch
@@ -0,0 +1,23 @@
+From c6df70fb4859fba630433586d39d728e60613399 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Tue, 28 May 2013 16:34:34 +0200
+Subject: [PATCH] btrfs: include btrfs-zero-log in the initramfs
+
+https://bugzilla.redhat.com/show_bug.cgi?id=963257
+---
+ modules.d/90btrfs/module-setup.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules.d/90btrfs/module-setup.sh b/modules.d/90btrfs/module-setup.sh
+index 4a7c01d..e1c8577 100755
+--- a/modules.d/90btrfs/module-setup.sh
++++ b/modules.d/90btrfs/module-setup.sh
+@@ -43,7 +43,7 @@ install() {
+             /usr/lib/dracut/hooks/initqueue/timeout/btrfs_timeout.sh
+     fi
+ 
+-    dracut_install btrfsck
++    dracut_install -o btrfsck btrfs-zero-log
+     inst $(command -v btrfs) /sbin/btrfs
+ }
+ 
diff --git a/0060-ifcfg-write-ifcfg.sh-proper-NAME-the-interfaces.patch b/0060-ifcfg-write-ifcfg.sh-proper-NAME-the-interfaces.patch
new file mode 100644
index 0000000..b291a27
--- /dev/null
+++ b/0060-ifcfg-write-ifcfg.sh-proper-NAME-the-interfaces.patch
@@ -0,0 +1,41 @@
+From 284d62da816a9d3678906e9dbeb796132016b9c9 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Tue, 28 May 2013 16:56:40 +0200
+Subject: [PATCH] ifcfg/write-ifcfg.sh: proper NAME the interfaces
+
+https://bugzilla.redhat.com/show_bug.cgi?id=965842
+---
+ modules.d/45ifcfg/write-ifcfg.sh | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/modules.d/45ifcfg/write-ifcfg.sh b/modules.d/45ifcfg/write-ifcfg.sh
+index 16da5e4..baa63fa 100755
+--- a/modules.d/45ifcfg/write-ifcfg.sh
++++ b/modules.d/45ifcfg/write-ifcfg.sh
+@@ -152,7 +152,7 @@ for netif in $IFACES ; do
+             fi
+             print_s390 $netif
+             echo "TYPE=Ethernet"
+-            echo "NAME=\"Boot Disk\""
++            echo "NAME=\"$netif\""
+             [ -n "$mtu" ] && echo "MTU=$mtu"
+         } >> /tmp/ifcfg/ifcfg-$netif
+     fi
+@@ -162,7 +162,7 @@ for netif in $IFACES ; do
+         {
+             # This variable is an indicator of a bond interface for initscripts
+             echo "BONDING_OPTS=\"$bondoptions\""
+-            echo "NAME=\"Boot Disk\""
++            echo "NAME=\"$netif\""
+         } >> /tmp/ifcfg/ifcfg-$netif
+ 
+         for slave in $bondslaves ; do
+@@ -186,7 +186,7 @@ for netif in $IFACES ; do
+         # bridge
+         {
+             echo "TYPE=Bridge"
+-            echo "NAME=\"Boot Disk\""
++            echo "NAME=\"$netif\""
+         } >> /tmp/ifcfg/ifcfg-$netif
+         if [ "$ethname" = "$bondname" ] ; then
+             {
diff --git a/0061-40network-Provide-a-hostname-fallback-function-in-ca.patch b/0061-40network-Provide-a-hostname-fallback-function-in-ca.patch
new file mode 100644
index 0000000..e682aa2
--- /dev/null
+++ b/0061-40network-Provide-a-hostname-fallback-function-in-ca.patch
@@ -0,0 +1,22 @@
+From cbfe65c2fe599b7b5eb6a144332e84c2290869ea Mon Sep 17 00:00:00 2001
+From: Dennis Schridde <devurandom at gmx.net>
+Date: Fri, 17 May 2013 13:54:57 +0200
+Subject: [PATCH] [40network] Provide a hostname fallback function, in case
+ there is no executable of this name
+
+---
+ modules.d/40network/net-lib.sh | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/modules.d/40network/net-lib.sh b/modules.d/40network/net-lib.sh
+index f9b461b..d62d5ad 100644
+--- a/modules.d/40network/net-lib.sh
++++ b/modules.d/40network/net-lib.sh
+@@ -366,3 +366,7 @@ linkup() {
+      && wait_for_if_up $1 2>/dev/null
+ }
+ 
++type hostname >/dev/null 2>&1 || \
++hostname() {
++	cat /proc/sys/kernel/hostname
++}
diff --git a/0062-dracut-emergency.service-do-not-start-for-action_on_.patch b/0062-dracut-emergency.service-do-not-start-for-action_on_.patch
new file mode 100644
index 0000000..f325a02
--- /dev/null
+++ b/0062-dracut-emergency.service-do-not-start-for-action_on_.patch
@@ -0,0 +1,22 @@
+From b78e6ac2c328c76057b17059a761ab44707f9aa0 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Wed, 29 May 2013 11:33:25 +0200
+Subject: [PATCH] dracut-emergency.service: do not start for
+ "action_on_fail=continue"
+
+---
+ modules.d/98systemd/dracut-emergency.service | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/modules.d/98systemd/dracut-emergency.service b/modules.d/98systemd/dracut-emergency.service
+index 12eef6c..ebf5aac 100644
+--- a/modules.d/98systemd/dracut-emergency.service
++++ b/modules.d/98systemd/dracut-emergency.service
+@@ -13,6 +13,7 @@ DefaultDependencies=no
+ After=systemd-vconsole-setup.service
+ Wants=systemd-vconsole-setup.service
+ Conflicts=emergency.service emergency.target
++ConditionKernelCommandLine=!action_on_fail=continue
+ 
+ [Service]
+ Environment=HOME=/
diff --git a/0063-i18n-module-setup.sh-install-default-font-latarcyrhe.patch b/0063-i18n-module-setup.sh-install-default-font-latarcyrhe.patch
new file mode 100644
index 0000000..1dce9a1
--- /dev/null
+++ b/0063-i18n-module-setup.sh-install-default-font-latarcyrhe.patch
@@ -0,0 +1,22 @@
+From 0a3e348225336f45a9abe8e74b384fdf17e9053f Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Wed, 29 May 2013 13:20:00 +0200
+Subject: [PATCH] i18n/module-setup.sh: install default font latarcyrheb-sun16
+
+---
+ modules.d/10i18n/module-setup.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules.d/10i18n/module-setup.sh b/modules.d/10i18n/module-setup.sh
+index fcd8282..60a50e7 100755
+--- a/modules.d/10i18n/module-setup.sh
++++ b/modules.d/10i18n/module-setup.sh
+@@ -14,7 +14,7 @@ depends() {
+ install() {
+     dracut_install -o $systemdutildir/systemd-vconsole-setup
+     KBDSUBDIRS=consolefonts,consoletrans,keymaps,unimaps
+-    DEFAULT_FONT=LatArCyrHeb-16
++    DEFAULT_FONT=latarcyrheb-sun16
+     I18N_CONF="/etc/locale.conf"
+     VCONFIG_CONF="/etc/vconsole.conf"
+ 
diff --git a/0064-crypt-loop-module-setup.sh-install-loop-kernel-modul.patch b/0064-crypt-loop-module-setup.sh-install-loop-kernel-modul.patch
new file mode 100644
index 0000000..04c2fc6
--- /dev/null
+++ b/0064-crypt-loop-module-setup.sh-install-loop-kernel-modul.patch
@@ -0,0 +1,24 @@
+From 8099e7b1ba10eaf7780e6423e97a13a5c62cf5bd Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Wed, 29 May 2013 13:31:54 +0200
+Subject: [PATCH] crypt-loop/module-setup.sh: install loop kernel module
+
+---
+ modules.d/91crypt-loop/module-setup.sh | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/modules.d/91crypt-loop/module-setup.sh b/modules.d/91crypt-loop/module-setup.sh
+index 5e7bcbd..218d27a 100644
+--- a/modules.d/91crypt-loop/module-setup.sh
++++ b/modules.d/91crypt-loop/module-setup.sh
+@@ -8,6 +8,10 @@ depends() {
+ 	echo crypt
+ }
+ 
++installkernel() {
++	    instmods loop
++}
++
+ install() {
+ 	dracut_install losetup
+ 	inst "$moddir/crypt-loop-lib.sh" "/lib/dracut-crypt-loop-lib.sh"
diff --git a/0065-udev-rules-module-setup.sh-optionally-install-etc-pc.patch b/0065-udev-rules-module-setup.sh-optionally-install-etc-pc.patch
new file mode 100644
index 0000000..5e01a5d
--- /dev/null
+++ b/0065-udev-rules-module-setup.sh-optionally-install-etc-pc.patch
@@ -0,0 +1,24 @@
+From af2578562c4a32445c6a9dd91651b9ad89043f0d Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Wed, 29 May 2013 14:28:25 +0200
+Subject: [PATCH] udev-rules/module-setup.sh: optionally install
+ /etc/pcmcia/config.opts
+
+https://bugzilla.redhat.com/show_bug.cgi?id=920076
+---
+ modules.d/95udev-rules/module-setup.sh | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/modules.d/95udev-rules/module-setup.sh b/modules.d/95udev-rules/module-setup.sh
+index 1c48202..e952e80 100755
+--- a/modules.d/95udev-rules/module-setup.sh
++++ b/modules.d/95udev-rules/module-setup.sh
+@@ -69,6 +69,8 @@ install() {
+         ${udevdir}/pcmcia-socket-startup \
+         ${udevdir}/pcmcia-check-broken-cis
+ 
++    dracut_install -o /etc/pcmcia/config.opts
++
+     [ -f /etc/arch-release ] && \
+         inst_script "$moddir/load-modules.sh" /lib/udev/load-modules.sh
+ 
diff --git a/0066-ifcfg-write-ifcfg.sh.patch b/0066-ifcfg-write-ifcfg.sh.patch
new file mode 100644
index 0000000..fe21150
--- /dev/null
+++ b/0066-ifcfg-write-ifcfg.sh.patch
@@ -0,0 +1,71 @@
+From 6625c085aeee0694f4f53b0454ff3466755d90a8 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Wed, 29 May 2013 14:38:52 +0200
+Subject: [PATCH] ifcfg/write-ifcfg.sh:
+
+- fix ONBOOT for slaves
+- set TYPE=Bond for bonding
+
+https://bugzilla.redhat.com/show_bug.cgi?id=919001
+---
+ modules.d/45ifcfg/write-ifcfg.sh | 12 +++++-------
+ 1 file changed, 5 insertions(+), 7 deletions(-)
+
+diff --git a/modules.d/45ifcfg/write-ifcfg.sh b/modules.d/45ifcfg/write-ifcfg.sh
+index baa63fa..625d00b 100755
+--- a/modules.d/45ifcfg/write-ifcfg.sh
++++ b/modules.d/45ifcfg/write-ifcfg.sh
+@@ -163,16 +163,16 @@ for netif in $IFACES ; do
+             # This variable is an indicator of a bond interface for initscripts
+             echo "BONDING_OPTS=\"$bondoptions\""
+             echo "NAME=\"$netif\""
++            echo "TYPE=Bond"
+         } >> /tmp/ifcfg/ifcfg-$netif
+ 
+         for slave in $bondslaves ; do
+-            # Set ONBOOT=no to prevent initscripts from trying to setup already bonded physical interface
+             # write separate ifcfg file for the raw eth interface
+             {
+                 echo "# Generated by dracut initrd"
+                 echo "DEVICE=$slave"
+                 echo "TYPE=Ethernet"
+-                echo "ONBOOT=no"
++                echo "ONBOOT=yes"
+                 echo "NETBOOT=yes"
+                 echo "HWADDR=$(cat /sys/class/net/$slave/address)"
+                 echo "SLAVE=yes"
+@@ -190,10 +190,9 @@ for netif in $IFACES ; do
+         } >> /tmp/ifcfg/ifcfg-$netif
+         if [ "$ethname" = "$bondname" ] ; then
+             {
+-                # Set ONBOOT=no to prevent initscripts from trying to setup already bridged bond interface
+                 echo "# Generated by dracut initrd"
+                 echo "DEVICE=$bondname"
+-                echo "ONBOOT=no"
++                echo "ONBOOT=yes"
+                 echo "NETBOOT=yes"
+                 # This variable is an indicator of a bond interface for initscripts
+                 echo "BONDING_OPTS=\"$bondoptions\""
+@@ -202,12 +201,11 @@ for netif in $IFACES ; do
+             } >> /tmp/ifcfg/ifcfg-$bondname
+             for slave in $bondslaves ; do
+                 # write separate ifcfg file for the raw eth interface
+-                # Set ONBOOT=no to prevent initscripts from trying to setup already bridged physical interface
+                 {
+                     echo "# Generated by dracut initrd"
+                     echo "DEVICE=$slave"
+                     echo "TYPE=Ethernet"
+-                    echo "ONBOOT=no"
++                    echo "ONBOOT=yes"
+                     echo "NETBOOT=yes"
+                     echo "HWADDR=$(cat /sys/class/net/$slave/address)"
+                     echo "SLAVE=yes"
+@@ -221,7 +219,7 @@ for netif in $IFACES ; do
+                 echo "# Generated by dracut initrd"
+                 echo "DEVICE=$ethname"
+                 echo "TYPE=Ethernet"
+-                echo "ONBOOT=no"
++                echo "ONBOOT=yes"
+                 echo "NETBOOT=yes"
+                 echo "HWADDR=$(cat /sys/class/net/$ethname/address)"
+                 echo "BRIDGE=$netif"
diff --git a/0067-kernel-modules-module-setup.sh-add-nvme-kernel-modul.patch b/0067-kernel-modules-module-setup.sh-add-nvme-kernel-modul.patch
new file mode 100644
index 0000000..1349935
--- /dev/null
+++ b/0067-kernel-modules-module-setup.sh-add-nvme-kernel-modul.patch
@@ -0,0 +1,25 @@
+From af2716626aa0243457c0e00fdd457f97269a50b3 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Wed, 29 May 2013 14:45:59 +0200
+Subject: [PATCH] kernel-modules/module-setup.sh: add nvme kernel module
+
+apparently not caught by the block driver regexp
+
+https://bugzilla.redhat.com/show_bug.cgi?id=910734
+---
+ 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 a04eba8..4060c80 100755
+--- a/modules.d/90kernel-modules/module-setup.sh
++++ b/modules.d/90kernel-modules/module-setup.sh
+@@ -42,7 +42,7 @@ installkernel() {
+         instmods yenta_socket scsi_dh_rdac scsi_dh_emc \
+             atkbd i8042 usbhid hid-apple hid-sunplus hid-cherry hid-logitech \
+             hid-logitech-dj hid-microsoft firewire-ohci \
+-            pcmcia usb_storage
++            pcmcia usb_storage nvme
+ 
+         if [[ "$(uname -p)" == arm* ]]; then
+             # arm specific modules
diff --git a/0068-fs-lib-module-setup.sh-add-xfs_metadump.patch b/0068-fs-lib-module-setup.sh-add-xfs_metadump.patch
new file mode 100644
index 0000000..5f3d23b
--- /dev/null
+++ b/0068-fs-lib-module-setup.sh-add-xfs_metadump.patch
@@ -0,0 +1,31 @@
+From 4f084f3ab50e8cac8ab9cc889a96cce864bd98c8 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Wed, 29 May 2013 17:51:57 +0200
+Subject: [PATCH] fs-lib/module-setup.sh: add xfs_metadump
+
+---
+ modules.d/99fs-lib/module-setup.sh | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/modules.d/99fs-lib/module-setup.sh b/modules.d/99fs-lib/module-setup.sh
+index 637737e..df9a04c 100755
+--- a/modules.d/99fs-lib/module-setup.sh
++++ b/modules.d/99fs-lib/module-setup.sh
+@@ -15,7 +15,7 @@ echo_fs_helper() {
+     local dev=$1 fs=$2
+     case "$fs" in
+         xfs)
+-            echo -n " xfs_db xfs_repair xfs_check "
++            echo -n " xfs_db xfs_repair xfs_check xfs_metadump "
+             ;;
+         ext?)
+             echo -n " e2fsck "
+@@ -65,7 +65,7 @@ install() {
+     if [[ "$fscks" = "${fscks#*[^ ]*}" ]]; then
+         _helpers="\
+             umount mount /sbin/fsck*
+-            xfs_db xfs_check xfs_repair
++            xfs_db xfs_check xfs_repair xfs_metadump
+             e2fsck jfs_fsck reiserfsck btrfsck
+         "
+         if [[ $hostonly ]]; then
diff --git a/0069-99fs-lib-fs-lib.sh-Let-user-specify-the-action-after.patch b/0069-99fs-lib-fs-lib.sh-Let-user-specify-the-action-after.patch
new file mode 100644
index 0000000..5055db7
--- /dev/null
+++ b/0069-99fs-lib-fs-lib.sh-Let-user-specify-the-action-after.patch
@@ -0,0 +1,35 @@
+From 679fa7ed3c0f4c827bfc6885d34f56713fe85c1e Mon Sep 17 00:00:00 2001
+From: Baoquan He <bhe at redhat.com>
+Date: Wed, 29 May 2013 14:33:06 +0800
+Subject: [PATCH] 99fs-lib/fs-lib.sh: Let user specify the action after fail
+ for fsck
+
+The fsck is ignored when replace emergency_shell with action_on_fail,
+now add it.
+
+Signed-off-by: Baoquan He <bhe at redhat.com>
+---
+ modules.d/99fs-lib/fs-lib.sh | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/modules.d/99fs-lib/fs-lib.sh b/modules.d/99fs-lib/fs-lib.sh
+index e1f3074..88e7348 100755
+--- a/modules.d/99fs-lib/fs-lib.sh
++++ b/modules.d/99fs-lib/fs-lib.sh
+@@ -7,14 +7,14 @@ type getarg >/dev/null 2>&1 || . /lib/dracut-lib.sh
+ fsck_ask_reboot() {
+     info "note - fsck suggests reboot, if you"
+     info "leave shell, booting will continue normally"
+-    emergency_shell -n "(reboot ?)"
++    action_on_fail -n "(reboot ?)"
+ }
+ 
+ fsck_ask_err() {
+     warn "*** An error occurred during the file system check."
+     warn "*** Dropping you to a shell; the system will try"
+     warn "*** to mount the filesystem(s), when you leave the shell."
+-    emergency_shell -n "(Repair filesystem)"
++    action_on_fail -n "(Repair filesystem)"
+ }
+ 
+ # inherits: _ret _drv _out
diff --git a/0070-use-system-provides-udev-rule-and-initialization-scr.patch b/0070-use-system-provides-udev-rule-and-initialization-scr.patch
new file mode 100644
index 0000000..b3b8910
--- /dev/null
+++ b/0070-use-system-provides-udev-rule-and-initialization-scr.patch
@@ -0,0 +1,82 @@
+From bc97e005fa097b9b8111ab0ec19bd4e246c13f9b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Dan=20Hor=C3=A1k?= <dan at danny.cz>
+Date: Wed, 29 May 2013 11:26:56 +0200
+Subject: [PATCH] use system provides udev rule and initialization script
+
+---
+ modules.d/95zfcp/56-zfcp.rules |  1 -
+ modules.d/95zfcp/zfcpconf.sh   | 57 ------------------------------------------
+ 2 files changed, 58 deletions(-)
+ delete mode 100644 modules.d/95zfcp/56-zfcp.rules
+ delete mode 100755 modules.d/95zfcp/zfcpconf.sh
+
+diff --git a/modules.d/95zfcp/56-zfcp.rules b/modules.d/95zfcp/56-zfcp.rules
+deleted file mode 100644
+index 5558f8b..0000000
+--- a/modules.d/95zfcp/56-zfcp.rules
++++ /dev/null
+@@ -1 +0,0 @@
+-KERNEL=="zfcp", RUN+="/sbin/zfcpconf.sh"
+diff --git a/modules.d/95zfcp/zfcpconf.sh b/modules.d/95zfcp/zfcpconf.sh
+deleted file mode 100755
+index 7127eae..0000000
+--- a/modules.d/95zfcp/zfcpconf.sh
++++ /dev/null
+@@ -1,57 +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
+-
+-# config file syntax:
+-# deviceno   WWPN   FCPLUN
+-#
+-# Example:
+-# 0.0.4000 0x5005076300C213e9 0x5022000000000000
+-# 0.0.4001 0x5005076300c213e9 0x5023000000000000
+-#
+-#
+-# manual setup:
+-# modprobe zfcp
+-# echo 1    > /sys/bus/ccw/drivers/zfcp/0.0.4000/online
+-# echo LUN  > /sys/bus/ccw/drivers/zfcp/0.0.4000/WWPN/unit_add
+-#
+-# Example:
+-# modprobe zfcp
+-# echo 1                  > /sys/bus/ccw/drivers/zfcp/0.0.4000/online
+-# echo 0x5022000000000000 > /sys/bus/ccw/drivers/zfcp/0.0.4000/0x5005076300c213e9/unit_add
+-
+-CONFIG=/etc/zfcp.conf
+-PATH=/usr/sbin:/usr/bin:/sbin:/bin
+-
+-if [ -f "$CONFIG" ]; then
+-    if [ ! -d /sys/bus/ccw/drivers/zfcp ]; then
+-        modprobe zfcp
+-    fi
+-    if [ ! -d /sys/bus/ccw/drivers/zfcp ]; then
+-        return
+-    fi
+-    sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/' < $CONFIG| while read line; do
+-    case $line in
+-        \#*) ;;
+-        *)
+-            [ -z "$line" ] && continue
+-            set $line
+-            if [ $# -eq 5 ]; then
+-                DEVICE=$1
+-                SCSIID=$2
+-                WWPN=$3
+-                SCSILUN=$4
+-                FCPLUN=$5
+-                echo "Warning: Deprecated values in /etc/zfcp.conf, ignoring SCSI ID $SCSIID and SCSI LUN $SCSILUN"
+-            elif [ $# -eq 3 ]; then
+-                DEVICE=${1##*0x}
+-                WWPN=$2
+-                FCPLUN=$3
+-            fi
+-            echo 1 > /sys/bus/ccw/drivers/zfcp/${DEVICE}/online
+-            [ ! -d /sys/bus/ccw/drivers/zfcp/${DEVICE}/${WWPN}/${FCPLUN} ] \
+-                && echo $FCPLUN > /sys/bus/ccw/drivers/zfcp/${DEVICE}/${WWPN}/unit_add
+-            ;;
+-    esac
+-    done
+-fi
diff --git a/0071-selinux-load_policy-script-fix.patch b/0071-selinux-load_policy-script-fix.patch
new file mode 100644
index 0000000..b6e050f
--- /dev/null
+++ b/0071-selinux-load_policy-script-fix.patch
@@ -0,0 +1,39 @@
+From cf8b1b785366e0a7c2ae1b3781d66b0f99d6f8fe Mon Sep 17 00:00:00 2001
+From: "dyoung at redhat.com" <dyoung at redhat.com>
+Date: Thu, 30 May 2013 14:19:00 +0800
+Subject: [PATCH] selinux: load_policy script fix
+
+chroot load_policy will use selinuxfs which should be mounted
+in $NEWROOT/sys/fs/selinux for Fedora 19, but because there's
+no $NEWROOT/sys/fs, so later process will fail.
+
+Fixing this by bind mount /sys to $NEWROOT/sys.
+
+Signed-off-by: Dave Young <dyoung at redhat.com>
+---
+ modules.d/98selinux/selinux-loadpolicy.sh | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/modules.d/98selinux/selinux-loadpolicy.sh b/modules.d/98selinux/selinux-loadpolicy.sh
+index 7526265..5dddfc2 100755
+--- a/modules.d/98selinux/selinux-loadpolicy.sh
++++ b/modules.d/98selinux/selinux-loadpolicy.sh
+@@ -24,7 +24,8 @@ rd_load_policy()
+         local ret=0
+         local out
+         info "Loading SELinux policy"
+-        # load_policy does mount /proc and /selinux in
++        mount -o bind /sys $NEWROOT/sys
++        # load_policy does mount /proc and /sys/fs/selinux in
+         # libselinux,selinux_init_load_policy()
+         if [ -x "$NEWROOT/sbin/load_policy" ]; then
+             out=$(LANG=C chroot "$NEWROOT" /sbin/load_policy -i 2>&1)
+@@ -35,6 +36,8 @@ rd_load_policy()
+             ret=$?
+             info $out
+         fi
++        umount $NEWROOT/sys/fs/selinux
++        umount $NEWROOT/sys
+ 
+         if [ "$SELINUX" = "disabled" ]; then
+             return 0;
diff --git a/0072-base-dracut-lib.sh-export-DRACUT_SYSTEMD-and-NEWROOT.patch b/0072-base-dracut-lib.sh-export-DRACUT_SYSTEMD-and-NEWROOT.patch
new file mode 100644
index 0000000..b0fe958
--- /dev/null
+++ b/0072-base-dracut-lib.sh-export-DRACUT_SYSTEMD-and-NEWROOT.patch
@@ -0,0 +1,23 @@
+From 62cb52f4317460f313c18c906737d9e0eddb9081 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Thu, 30 May 2013 08:32:18 +0200
+Subject: [PATCH] base/dracut-lib.sh: export DRACUT_SYSTEMD and NEWROOT
+
+---
+ modules.d/99base/dracut-lib.sh | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/modules.d/99base/dracut-lib.sh b/modules.d/99base/dracut-lib.sh
+index 5cb0add..d20ce67 100755
+--- a/modules.d/99base/dracut-lib.sh
++++ b/modules.d/99base/dracut-lib.sh
+@@ -2,6 +2,9 @@
+ # -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
+ # ex: ts=8 sw=4 sts=4 et filetype=sh
+ 
++export DRACUT_SYSTEMD
++export NEWROOT
++
+ debug_off() {
+     set +x
+ }
diff --git a/0073-kernel-modules-module-setup.sh-add-hid-hyperv-and-hv.patch b/0073-kernel-modules-module-setup.sh-add-hid-hyperv-and-hv.patch
new file mode 100644
index 0000000..b25c770
--- /dev/null
+++ b/0073-kernel-modules-module-setup.sh-add-hid-hyperv-and-hv.patch
@@ -0,0 +1,22 @@
+From e64bcf5a9937bb53260af79bc4c93f9eab502d1a Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Thu, 30 May 2013 08:38:40 +0200
+Subject: [PATCH] kernel-modules/module-setup.sh: add hid-hyperv and hv-vmbus
+
+---
+ 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 4060c80..ed7a19e 100755
+--- a/modules.d/90kernel-modules/module-setup.sh
++++ b/modules.d/90kernel-modules/module-setup.sh
+@@ -42,7 +42,7 @@ installkernel() {
+         instmods yenta_socket scsi_dh_rdac scsi_dh_emc \
+             atkbd i8042 usbhid hid-apple hid-sunplus hid-cherry hid-logitech \
+             hid-logitech-dj hid-microsoft firewire-ohci \
+-            pcmcia usb_storage nvme
++            pcmcia usb_storage nvme hid-hyperv hv-vmbus
+ 
+         if [[ "$(uname -p)" == arm* ]]; then
+             # arm specific modules
diff --git a/0074-dmsquash-live-dmsquash-live-root.sh-add-parameter-rd.patch b/0074-dmsquash-live-dmsquash-live-root.sh-add-parameter-rd.patch
new file mode 100644
index 0000000..170eb90
--- /dev/null
+++ b/0074-dmsquash-live-dmsquash-live-root.sh-add-parameter-rd.patch
@@ -0,0 +1,40 @@
+From 32214acb3ae02d28cf72e15040f062fcbd5aa4ab Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Thu, 30 May 2013 09:26:43 +0200
+Subject: [PATCH] dmsquash-live/dmsquash-live-root.sh: add parameter
+ rd.live.squashimg
+
+rd.live.squashimg names the squash image in the rd.live.dir
+and defaults to squashfs.img
+
+https://bugzilla.redhat.com/show_bug.cgi?id=789036
+https://bugzilla.redhat.com/show_bug.cgi?id=782108
+---
+ modules.d/90dmsquash-live/dmsquash-live-root.sh | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/modules.d/90dmsquash-live/dmsquash-live-root.sh b/modules.d/90dmsquash-live/dmsquash-live-root.sh
+index 07e41f0..f63819c 100755
+--- a/modules.d/90dmsquash-live/dmsquash-live-root.sh
++++ b/modules.d/90dmsquash-live/dmsquash-live-root.sh
+@@ -19,6 +19,9 @@ livedev="$1"
+ # specified as their own things
+ live_dir=$(getarg rd.live.dir -d live_dir)
+ [ -z "$live_dir" ] && live_dir="LiveOS"
++squash_image=$(getarg rd.live.squashimg)
++[ -z "squash_image" ] && squash_image="squashfs.img"
++
+ getargbool 0 rd.live.ram -d -y live_ram && live_ram="yes"
+ getargbool 0 rd.live.overlay.reset -d -y reset_overlay && reset_overlay="yes"
+ getargbool 0 rd.live.overlay.readonly -d -y readonly_overlay && readonly_overlay="--readonly" || readonly_overlay=""
+@@ -180,8 +183,8 @@ if [ -n "$FSIMG" ] ; then
+ fi
+ 
+ # we might have an embedded fs image on squashfs (compressed live)
+-if [ -e /run/initramfs/live/${live_dir}/squashfs.img ]; then
+-    SQUASHED="/run/initramfs/live/${live_dir}/squashfs.img"
++if [ -e /run/initramfs/live/${live_dir}/${squash_image} ]; then
++    SQUASHED="/run/initramfs/live/${live_dir}/${squash_image}"
+ fi
+ 
+ if [ -e "$SQUASHED" ] ; then
diff --git a/0075-systemd-emergency.service-do-not-run-for-action_on_f.patch b/0075-systemd-emergency.service-do-not-run-for-action_on_f.patch
new file mode 100644
index 0000000..ff160f8
--- /dev/null
+++ b/0075-systemd-emergency.service-do-not-run-for-action_on_f.patch
@@ -0,0 +1,23 @@
+From dcae873414ff643e1de790f256e414923e2aef8b Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Thu, 30 May 2013 11:14:39 +0200
+Subject: [PATCH] systemd/emergency.service: do not run for
+ action_on_fail=continue
+
+same as for dracut-emergency.service
+---
+ modules.d/98systemd/emergency.service | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/modules.d/98systemd/emergency.service b/modules.d/98systemd/emergency.service
+index 35d9c31..c19fe37 100644
+--- a/modules.d/98systemd/emergency.service
++++ b/modules.d/98systemd/emergency.service
+@@ -12,6 +12,7 @@ Description=Emergency Shell
+ DefaultDependencies=no
+ After=systemd-vconsole-setup.service
+ Wants=systemd-vconsole-setup.service
++ConditionKernelCommandLine=!action_on_fail=continue
+ 
+ [Service]
+ Environment=HOME=/
diff --git a/0076-network-wait-for-all-required-interfaces-if-rd.needn.patch b/0076-network-wait-for-all-required-interfaces-if-rd.needn.patch
new file mode 100644
index 0000000..e38bf57
--- /dev/null
+++ b/0076-network-wait-for-all-required-interfaces-if-rd.needn.patch
@@ -0,0 +1,69 @@
+From feaf30ffaa3365febe06ef3f0086778a6d364f0c Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Thu, 30 May 2013 11:38:23 +0200
+Subject: [PATCH] network: wait for all required interfaces if "rd.neednet=1"
+
+also set bootdev to the first configured interface, if missing
+
+https://bugzilla.redhat.com/show_bug.cgi?id=801829
+---
+ modules.d/40network/net-genrules.sh  | 8 +++++---
+ modules.d/40network/parse-ip-opts.sh | 9 ++++++---
+ 2 files changed, 11 insertions(+), 6 deletions(-)
+
+diff --git a/modules.d/40network/net-genrules.sh b/modules.d/40network/net-genrules.sh
+index 8bf6a89..8f28c93 100755
+--- a/modules.d/40network/net-genrules.sh
++++ b/modules.d/40network/net-genrules.sh
+@@ -14,8 +14,10 @@ fix_bootif() {
+     echo $macaddr | sed 'y/ABCDEF/abcdef/'
+ }
+ 
++getargbool 0 rd.neednet && NEEDNET=1
++
+ # Don't continue if we don't need network
+-if [ -z "$netroot" ] && [ ! -e "/tmp/net.ifaces" ] && ! getargbool 0 rd.neednet >/dev/null; then
++if [ -z "$netroot" ] && [ ! -e "/tmp/net.ifaces" ] && [ "$NEEDNET" != "1" ]; then
+     return
+ fi
+ 
+@@ -73,13 +75,13 @@ fi
+     elif [ -n "$IFACES" ] ; then
+         for iface in $IFACES ; do
+             printf 'SUBSYSTEM=="net", ENV{INTERFACE}=="%s", RUN+="%s"\n' "$iface" "/sbin/initqueue --onetime $ifup"
+-            if [ "$bootdev" = "$iface" ]; then
++            if [ "$bootdev" = "$iface" ] || [ "$NEEDNET" = "1" ]; then
+                 echo "[ -f /tmp/setup_net_${iface}.ok ]" >$hookdir/initqueue/finished/wait-$iface.sh
+             fi
+         done
+ 
+         for iface in $MASTER_IFACES; do
+-            if [ "$bootdev" = "$iface" ]; then
++            if [ "$bootdev" = "$iface" ] || [ "$NEEDNET" = "1" ]; then
+                 echo "[ -f /tmp/setup_net_${iface}.ok ]" >$hookdir/initqueue/finished/wait-$iface.sh
+             fi
+         done
+diff --git a/modules.d/40network/parse-ip-opts.sh b/modules.d/40network/parse-ip-opts.sh
+index c7dc3ce..f64c936 100755
+--- a/modules.d/40network/parse-ip-opts.sh
++++ b/modules.d/40network/parse-ip-opts.sh
+@@ -54,6 +54,12 @@ fi
+ for p in $(getargs ip=); do
+     ip_to_var $p
+ 
++    # make first device specified the BOOTDEV
++    if [ -z "$BOOTDEV" ] && [ -n "$dev" ]; then
++        BOOTDEV="$dev"
++        [ -n "$NEEDBOOTDEV" ] && warn "Setting bootdev to '$BOOTDEV'"
++    fi
++
+     # skip ibft since we did it above
+     [ "$autoconf" = "ibft" ] && continue
+ 
+@@ -121,6 +127,3 @@ fi
+ # Store BOOTDEV and IFACES for later use
+ [ -n "$BOOTDEV" ] && echo $BOOTDEV > /tmp/net.bootdev
+ [ -n "$IFACES" ]  && echo $IFACES > /tmp/net.ifaces
+-
+-# We need a ip= line for the configured bootdev=
+-[ -n "$NEEDBOOTDEV" ] && [ -z "$BOOTDEVOK" ] && die "Bootdev Argument '$BOOTDEV' not found"
diff --git a/0077-lvm-add-tools-for-thin-provisioning.patch b/0077-lvm-add-tools-for-thin-provisioning.patch
new file mode 100644
index 0000000..d99d5eb
--- /dev/null
+++ b/0077-lvm-add-tools-for-thin-provisioning.patch
@@ -0,0 +1,53 @@
+From 57937cf480c8e612edae5b00d978dce84fd83be9 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Thu, 30 May 2013 12:02:59 +0200
+Subject: [PATCH] lvm: add tools for thin provisioning
+
+https://bugzilla.redhat.com/show_bug.cgi?id=921235
+---
+ modules.d/90lvm/module-setup.sh | 12 +++++++++++-
+ 1 file changed, 11 insertions(+), 1 deletion(-)
+
+diff --git a/modules.d/90lvm/module-setup.sh b/modules.d/90lvm/module-setup.sh
+index 22186f4..e8416ca 100755
+--- a/modules.d/90lvm/module-setup.sh
++++ b/modules.d/90lvm/module-setup.sh
+@@ -3,7 +3,6 @@
+ # ex: ts=8 sw=4 sts=4 et filetype=sh
+ 
+ check() {
+-    local _rootdev _activated
+     # No point trying to support lvm if the binaries are missing
+     type -P lvm >/dev/null || return 1
+ 
+@@ -25,6 +24,8 @@ depends() {
+ 
+ install() {
+     local _i
++    local _needthin
++    local _activated
+     inst lvm
+ 
+     check_lvm() {
+@@ -39,6 +40,10 @@ install() {
+             fi
+             push _activated "${DM_VG_NAME}/${DM_LV_NAME}"
+         fi
++        if ! [[ $_needthin ]]; then
++            [[ $(lvs --noheadings -o segtype $1) == *thin* ]] && _needthin=1
++        fi
++
+         return 0
+     }
+ 
+@@ -65,5 +70,10 @@ install() {
+     inst_hook cmdline 30 "$moddir/parse-lvm.sh"
+ 
+     inst_libdir_file "libdevmapper-event-lvm*.so"
++
++    if [[ $_needthin ]]; then
++        dracut_install -o thin_dump thin_restore thin_check
++    fi
++
+ }
+ 
diff --git a/0078-ifcfg-write-ifcfg.sh-fixed-logic.patch b/0078-ifcfg-write-ifcfg.sh-fixed-logic.patch
new file mode 100644
index 0000000..4878255
--- /dev/null
+++ b/0078-ifcfg-write-ifcfg.sh-fixed-logic.patch
@@ -0,0 +1,204 @@
+From caf207afa7c2a65f25be26a735643a873f5c092f Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Thu, 30 May 2013 14:37:41 +0200
+Subject: [PATCH] ifcfg/write-ifcfg.sh: fixed logic
+
+seems like nobody tested this with recent dracut versions.
+---
+ modules.d/45ifcfg/write-ifcfg.sh | 75 ++++++++++++++++++++++------------------
+ 1 file changed, 41 insertions(+), 34 deletions(-)
+
+diff --git a/modules.d/45ifcfg/write-ifcfg.sh b/modules.d/45ifcfg/write-ifcfg.sh
+index 625d00b..2e78c49 100755
+--- a/modules.d/45ifcfg/write-ifcfg.sh
++++ b/modules.d/45ifcfg/write-ifcfg.sh
+@@ -4,10 +4,6 @@
+ 
+ # NFS root might have reached here before /tmp/net.ifaces was written
+ udevadm settle --timeout=30
+-# Don't write anything if we don't know our bootdev
+-[ -f /tmp/net.ifaces ] || return 1
+-
+-read IFACES < /tmp/net.ifaces
+ 
+ if [ -e /tmp/bridge.info ]; then
+     . /tmp/bridge.info
+@@ -79,15 +75,25 @@ print_s390() {
+     echo "OPTIONS=\"${OPTIONS}\""
+ }
+ 
++for netup in /tmp/net.*.did-setup ; do
++    [ -f $netup ] || continue
+ 
+-for netif in $IFACES ; do
++    netif=${netup%%.did-setup}
++    netif=${netif##*/net.}
+     [ -e /tmp/ifcfg/ifcfg-$netif ] && continue
+-    # bridge?
+     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)
+@@ -100,45 +106,46 @@ for netif in $IFACES ; do
+     cat /sys/class/net/$netif/address > /tmp/net.$netif.hwaddr
+     {
+         echo "# Generated by dracut initrd"
+-        echo "DEVICE=$netif"
++        echo "DEVICE=\"$netif\""
+         echo "ONBOOT=yes"
+         echo "NETBOOT=yes"
+-        echo "UUID=$uuid"
+-        [ -n "$mtu" ] && echo "MTU=$mtu"
+-        if [ -f /tmp/net.$netif.lease ]; then
++        echo "UUID=\"$uuid\""
++        if [ -f /tmp/dhclient.$netif.lease ]; then
++            [ -f /tmp/dhclient.$netif.dhcpopts ] && . /tmp/dhclient.$netif.dhcpopts
+             strstr "$ip" '*:*:*' && echo "IPV6INIT=yes"
+             if [ -f /tmp/net.$netif.has_ibft_config ]; then
+                 echo "BOOTPROTO=ibft"
+             else
+                 echo "BOOTPROTO=dhcp"
+             fi
+-            cp /tmp/net.$netif.lease /tmp/ifcfg-leases/dhclient-$uuid-$netif.lease
++            cp /tmp/dhclient.$netif.lease /tmp/ifcfg-leases/dhclient-$uuid-$netif.lease
+         else
+             # If we've booted with static ip= lines, the override file is there
+             [ -e /tmp/net.$netif.override ] && . /tmp/net.$netif.override
+             if strstr "$ip" '*:*:*'; then
+                 echo "IPV6INIT=yes"
+                 echo "IPV6_AUTOCONF=no"
+-                echo "IPV6ADDR=$ip/$mask"
++                echo "IPV6ADDR=\"$ip/$mask\""
+             else
+                 if [ -f /tmp/net.$netif.has_ibft_config ]; then
+                     echo "BOOTPROTO=ibft"
+                 else
+                     echo "BOOTPROTO=none"
+-                    echo "IPADDR=$ip"
++                    echo "IPADDR=\"$ip\""
+                     if strstr "$mask" "."; then
+-                        echo "NETMASK=$mask"
++                        echo "NETMASK=\"$mask\""
+                     else
+-                        echo "PREFIX=$mask"
++                        echo "PREFIX=\"$mask\""
+                     fi
+                 fi
+             fi
+             if strstr "$gw" '*:*:*'; then
+-                echo "IPV6_DEFAULTGW=$gw"
++                echo "IPV6_DEFAULTGW=\"$gw\""
+             elif [ -n "$gw" ]; then
+-                echo "GATEWAY=$gw"
++                echo "GATEWAY=\"$gw\""
+             fi
+         fi
++        [ -n "$mtu" ] && echo "MTU=\"$mtu\""
+     } > /tmp/ifcfg/ifcfg-$netif
+ 
+     # bridge needs different things written to ifcfg
+@@ -146,14 +153,14 @@ for netif in $IFACES ; do
+         # standard interface
+         {
+             if [ -n "$macaddr" ]; then
+-                echo "MACADDR=$macaddr"
++                echo "MACADDR=\"$macaddr\""
+             else
+                 echo "HWADDR=\"$(cat /sys/class/net/$netif/address)\""
+             fi
+             print_s390 $netif
+             echo "TYPE=Ethernet"
+             echo "NAME=\"$netif\""
+-            [ -n "$mtu" ] && echo "MTU=$mtu"
++            [ -n "$mtu" ] && echo "MTU=\"$mtu\""
+         } >> /tmp/ifcfg/ifcfg-$netif
+     fi
+ 
+@@ -170,14 +177,14 @@ for netif in $IFACES ; do
+             # write separate ifcfg file for the raw eth interface
+             {
+                 echo "# Generated by dracut initrd"
+-                echo "DEVICE=$slave"
++                echo "DEVICE=\"$slave\""
+                 echo "TYPE=Ethernet"
+                 echo "ONBOOT=yes"
+                 echo "NETBOOT=yes"
+-                echo "HWADDR=$(cat /sys/class/net/$slave/address)"
++                echo "HWADDR=\"$(cat /sys/class/net/$slave/address)\""
+                 echo "SLAVE=yes"
+-                echo "MASTER=$netif"
+-                echo "NAME=$slave"
++                echo "MASTER=\"$netif\""
++                echo "NAME=\"$slave\""
+             } >> /tmp/ifcfg/ifcfg-$slave
+         done
+     fi
+@@ -191,45 +198,45 @@ for netif in $IFACES ; do
+         if [ "$ethname" = "$bondname" ] ; then
+             {
+                 echo "# Generated by dracut initrd"
+-                echo "DEVICE=$bondname"
++                echo "DEVICE=\"$bondname\""
+                 echo "ONBOOT=yes"
+                 echo "NETBOOT=yes"
+                 # This variable is an indicator of a bond interface for initscripts
+                 echo "BONDING_OPTS=\"$bondoptions\""
+-                echo "BRIDGE=$netif"
++                echo "BRIDGE=\"$netif\""
+                 echo "NAME=\"$bondname\""
+             } >> /tmp/ifcfg/ifcfg-$bondname
+             for slave in $bondslaves ; do
+                 # write separate ifcfg file for the raw eth interface
+                 {
+                     echo "# Generated by dracut initrd"
+-                    echo "DEVICE=$slave"
++                    echo "DEVICE=\"$slave\""
+                     echo "TYPE=Ethernet"
+                     echo "ONBOOT=yes"
+                     echo "NETBOOT=yes"
+-                    echo "HWADDR=$(cat /sys/class/net/$slave/address)"
++                    echo "HWADDR=\"$(cat /sys/class/net/$slave/address)\""
+                     echo "SLAVE=yes"
+-                    echo "MASTER=$bondname"
+-                    echo "NAME=$slave"
++                    echo "MASTER=\"$bondname\""
++                    echo "NAME=\"$slave\""
+                 } >> /tmp/ifcfg/ifcfg-$slave
+             done
+         else
+             # write separate ifcfg file for the raw eth interface
+             {
+                 echo "# Generated by dracut initrd"
+-                echo "DEVICE=$ethname"
++                echo "DEVICE=\"$ethname\""
+                 echo "TYPE=Ethernet"
+                 echo "ONBOOT=yes"
+                 echo "NETBOOT=yes"
+-                echo "HWADDR=$(cat /sys/class/net/$ethname/address)"
+-                echo "BRIDGE=$netif"
+-                echo "NAME=$ethname"
++                echo "HWADDR=\"$(cat /sys/class/net/$ethname/address)\""
++                echo "BRIDGE=\"$netif\""
++                echo "NAME=\"$ethname\""
+             } >> /tmp/ifcfg/ifcfg-$ethname
+         fi
+     fi
+     i=1
+     for ns in $(getargs nameserver); do
+-        echo "DNS${i}=${ns}" >> /tmp/ifcfg/ifcfg-$netif
++        echo "DNS${i}=\"${ns}\"" >> /tmp/ifcfg/ifcfg-$netif
+         i=$((i+1))
+     done
+ done
diff --git a/0079-dracut-functions.sh-get_persistent_dev-fix-case-for-.patch b/0079-dracut-functions.sh-get_persistent_dev-fix-case-for-.patch
new file mode 100644
index 0000000..d35ba94
--- /dev/null
+++ b/0079-dracut-functions.sh-get_persistent_dev-fix-case-for-.patch
@@ -0,0 +1,25 @@
+From 15c5c072f4fe44f39d60f2fa050a6b4ab05ee34f Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Fri, 31 May 2013 07:46:08 +0200
+Subject: [PATCH] dracut-functions.sh:get_persistent_dev() fix case for
+ multipath
+
+/dev/mapper/mpath* is not a persistent device path
+
+https://bugzilla.redhat.com/show_bug.cgi?id=969068
+---
+ dracut-functions.sh | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/dracut-functions.sh b/dracut-functions.sh
+index 4a0e81a..3d88c9d 100755
+--- a/dracut-functions.sh
++++ b/dracut-functions.sh
+@@ -254,6 +254,7 @@ get_persistent_dev() {
+     [ -z "$_dev" ] && return
+ 
+     for i in /dev/mapper/* /dev/disk/by-uuid/* /dev/disk/by-id/*; do
++        [[ $i == /dev/mapper/mpath* ]] && continue
+         _tmp=$(udevadm info --query=name --name="$i" 2>/dev/null)
+         if [ "$_tmp" = "$_dev" ]; then
+             echo $i
diff --git a/0080-dmsquash-live-dmsquash-live-root.sh-fixup-32214acb3a.patch b/0080-dmsquash-live-dmsquash-live-root.sh-fixup-32214acb3a.patch
new file mode 100644
index 0000000..1b90e3b
--- /dev/null
+++ b/0080-dmsquash-live-dmsquash-live-root.sh-fixup-32214acb3a.patch
@@ -0,0 +1,22 @@
+From d18fd0235bfdbb845eac35c6d45b06168cb37900 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald at redhat.com>
+Date: Fri, 31 May 2013 09:04:55 +0200
+Subject: [PATCH] dmsquash-live/dmsquash-live-root.sh: fixup 32214acb3ae
+
+---
+ modules.d/90dmsquash-live/dmsquash-live-root.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules.d/90dmsquash-live/dmsquash-live-root.sh b/modules.d/90dmsquash-live/dmsquash-live-root.sh
+index f63819c..14e84e1 100755
+--- a/modules.d/90dmsquash-live/dmsquash-live-root.sh
++++ b/modules.d/90dmsquash-live/dmsquash-live-root.sh
+@@ -20,7 +20,7 @@ livedev="$1"
+ live_dir=$(getarg rd.live.dir -d live_dir)
+ [ -z "$live_dir" ] && live_dir="LiveOS"
+ squash_image=$(getarg rd.live.squashimg)
+-[ -z "squash_image" ] && squash_image="squashfs.img"
++[ -z "$squash_image" ] && squash_image="squashfs.img"
+ 
+ getargbool 0 rd.live.ram -d -y live_ram && live_ram="yes"
+ getargbool 0 rd.live.overlay.reset -d -y reset_overlay && reset_overlay="yes"
diff --git a/dracut.spec b/dracut.spec
index 38dd7a7..086e7a3 100644
--- a/dracut.spec
+++ b/dracut.spec
@@ -10,7 +10,7 @@
 
 Name: dracut
 Version: 027
-Release: 46.git20130430%{?dist}
+Release: 81.git20130531%{?dist}
 
 Summary: Initramfs generator using udev
 %if 0%{?fedora} || 0%{?rhel}
@@ -73,10 +73,42 @@ Patch41: 0041-dracut-install-make-use-of-_cleanup_-macros.patch
 Patch42: 0042-_emergency_shell-Show-current-working-directory-corr.patch
 Patch43: 0043-test-use-grep-option-F-and-install-etc-os-release.patch
 Patch44: 0044-zfcp-match-udev-rule-against-KERNEL-zfcp.patch
-# Don't specify 'p' as a separator for dmraid; see #966162. Generated in
-# sequence with the above patches against dracut HEAD of 2013-05-22, will
-# send to harald. -adamw
-Patch45: 0045-don-t-specify-p-as-a-separator-for-dmraid-arrays-RHB.patch
+Patch45: 0045-usrmount-Fix-miss-detection-of-btrfs-subvolumes.patch
+Patch46: 0046-dracut.sh-degrade-message-about-missing-tools-for-st.patch
+Patch47: 0047-don-t-specify-p-as-a-separator-for-dmraid-arrays-RHB.patch
+Patch48: 0048-systemd-set-environment-vars-DRACUT_SYSTEMD-NEWROOT-.patch
+Patch49: 0049-don-t-add-volatile-swap-partitions-to-host_devs.patch
+Patch50: 0050-dracut-functions.sh-clarify-instmods-error-message.patch
+Patch51: 0051-01fips-module-setup.sh-add-libssl.so.10-to-make-kdum.patch
+Patch52: 0052-Fix-parsing-command-line-arguments.patch
+Patch53: 0053-Introduce-stricter-type-correctness.patch
+Patch54: 0054-Use-consistiently-termination-code-macros.patch
+Patch55: 0055-Always-check-the-return-number-of-asprintf.patch
+Patch56: 0056-Fix-memory-leak.patch
+Patch57: 0057-dracut.spec-put-selinux-for-kdump-crash-file-context.patch
+Patch58: 0058-url-lib-url-lib.sh-turn-off-curl-globbing.patch
+Patch59: 0059-btrfs-include-btrfs-zero-log-in-the-initramfs.patch
+Patch60: 0060-ifcfg-write-ifcfg.sh-proper-NAME-the-interfaces.patch
+Patch61: 0061-40network-Provide-a-hostname-fallback-function-in-ca.patch
+Patch62: 0062-dracut-emergency.service-do-not-start-for-action_on_.patch
+Patch63: 0063-i18n-module-setup.sh-install-default-font-latarcyrhe.patch
+Patch64: 0064-crypt-loop-module-setup.sh-install-loop-kernel-modul.patch
+Patch65: 0065-udev-rules-module-setup.sh-optionally-install-etc-pc.patch
+Patch66: 0066-ifcfg-write-ifcfg.sh.patch
+Patch67: 0067-kernel-modules-module-setup.sh-add-nvme-kernel-modul.patch
+Patch68: 0068-fs-lib-module-setup.sh-add-xfs_metadump.patch
+Patch69: 0069-99fs-lib-fs-lib.sh-Let-user-specify-the-action-after.patch
+Patch70: 0070-use-system-provides-udev-rule-and-initialization-scr.patch
+Patch71: 0071-selinux-load_policy-script-fix.patch
+Patch72: 0072-base-dracut-lib.sh-export-DRACUT_SYSTEMD-and-NEWROOT.patch
+Patch73: 0073-kernel-modules-module-setup.sh-add-hid-hyperv-and-hv.patch
+Patch74: 0074-dmsquash-live-dmsquash-live-root.sh-add-parameter-rd.patch
+Patch75: 0075-systemd-emergency.service-do-not-run-for-action_on_f.patch
+Patch76: 0076-network-wait-for-all-required-interfaces-if-rd.needn.patch
+Patch77: 0077-lvm-add-tools-for-thin-provisioning.patch
+Patch78: 0078-ifcfg-write-ifcfg.sh-fixed-logic.patch
+Patch79: 0079-dracut-functions.sh-get_persistent_dev-fix-case-for-.patch
+Patch80: 0080-dmsquash-live-dmsquash-live-root.sh-fixup-32214acb3a.patch
 
 
 BuildRequires: dash bash git
@@ -280,7 +312,6 @@ rm -fr $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/50gensplash
 rm -fr $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/96securityfs
 rm -fr $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/97masterkey
 rm -fr $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/98integrity
-rm -fr $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/98selinux
 %endif
 
 mkdir -p $RPM_BUILD_ROOT/boot/dracut
@@ -397,12 +428,12 @@ rm -rf $RPM_BUILD_ROOT
 %if %{undefined _unitdir}
 %{dracutlibdir}/modules.d/96securityfs
 %{dracutlibdir}/modules.d/97masterkey
-%{dracutlibdir}/modules.d/98selinux
 %{dracutlibdir}/modules.d/98integrity
 %endif
 %{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
@@ -485,6 +516,42 @@ rm -rf $RPM_BUILD_ROOT
 %{dracutlibdir}/dracut.conf.d/02-norescue.conf
 
 %changelog
+* Fri May 31 2013 Harald Hoyer <harald at redhat.com> 027-81.git20130531
+- fix btrfs mount flags for /usr
+- degrade message about missing tools for stripping
+Resolves: rhbz#958519
+- set environment vars DRACUT_SYSTEMD, NEWROOT in service file
+Resolves: rhbz#963159
+- don't add volatile swap partitions to host_devs
+- add libssl.so.10 to make kdump work with fips mode
+- readd selinux dracut module for kdump
+- url-lib/url-lib.sh: turn off curl globbing
+Resolves: rhbz#907497
+- include btrfs-zero-log in the initramfs
+Resolves: rhbz#963257
+- proper NAME the network interfaces
+Resolves: rhbz#965842
+- install default font latarcyrheb-sun16
+Resolves: rhbz#927564
+- optionally install /etc/pcmcia/config.opts
+Resolves: rhbz#920076
+- fix ONBOOT for slaves, set TYPE=Bond for bonding
+Resolves: rhbz#919001
+- add nvme kernel module
+Resolves: rhbz#910734
+- add xfs_metadump
+- selinux: load_policy script fix
+- add hid-hyperv and hv-vmbus kernel modules
+- add parameter rd.live.squashimg
+Resolves: rhbz#789036 rhbz#782108
+- wait for all required interfaces if "rd.neednet=1"
+Resolves: rhbz#801829
+- lvm: add tools for thin provisioning
+Resolves: rhbz#921235
+- ifcfg/write-ifcfg.sh: fixed ifcfg file generation
+- do not wait for mpath* devices
+Resolves: rhbz#969068
+
 * Wed May 22 2013 Adam Williamson <awilliam at redhat.com> 027-46.git20130430
 - don't specify "p" as a separator for dmraid
 Resolves: rhbz#966162


More information about the scm-commits mailing list