diff --git a/0001-dracut.8-fixed-LUKS-paragraph.patch b/0001-dracut.8-fixed-LUKS-paragraph.patch
new file mode 100644
index 0000000..3721010
--- /dev/null
+++ b/0001-dracut.8-fixed-LUKS-paragraph.patch
@@ -0,0 +1,27 @@
+From 7ea25f3a3426bd60c26e2deaf07f2c3918e65dcb Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald@redhat.com>
+Date: Wed, 7 Apr 2010 11:17:46 +0200
+Subject: [PATCH 01/15] dracut.8: fixed LUKS paragraph
+
+---
+ dracut.8 |    3 ++-
+ 1 files changed, 2 insertions(+), 1 deletions(-)
+
+diff --git a/dracut.8 b/dracut.8
+index 3ec9c4f..5220dea 100644
+--- a/dracut.8
++++ b/dracut.8
+@@ -214,8 +214,9 @@ only activate the LUKS partitions with the given UUID
+ Any "luks-" of the LUKS UUID is removed before comparing to <luks uuid>.
+ The comparisons also matches, if <luks uuid> is only the beginning of the 
+ LUKS UUID, so you don't have to specify the full UUID.
++.TP
+ .BR rd_NO_CRYPTTAB
+-do not check if LUKS partition is in /etc/crypttab
++do not check, if LUKS partition is in /etc/crypttab
+ 
+ .SS MD
+ .TP
+-- 
+1.7.0.1
+
diff --git a/0002-dracut.8-add-information-which-parameter-can-be-spec.patch b/0002-dracut.8-add-information-which-parameter-can-be-spec.patch
new file mode 100644
index 0000000..5e6adaf
--- /dev/null
+++ b/0002-dracut.8-add-information-which-parameter-can-be-spec.patch
@@ -0,0 +1,88 @@
+From d1bae3cd17d61c5e27b66690a6a383a9bd0c369e Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald@redhat.com>
+Date: Wed, 7 Apr 2010 15:55:14 +0200
+Subject: [PATCH 02/15] dracut.8: add information, which parameter can be specified multiple times
+
+---
+ dracut.8 |   15 ++++++++++++---
+ 1 files changed, 12 insertions(+), 3 deletions(-)
+
+diff --git a/dracut.8 b/dracut.8
+index 5220dea..57626fe 100644
+--- a/dracut.8
++++ b/dracut.8
+@@ -132,9 +132,11 @@ do not honor special mount options for the root filesystem found in
+ .TP
+ .BR rdblacklist= <drivername>
+ do not load kernel module <drivername>
++This parameter can be specified multiple times.
+ .TP
+ .BR rdloaddriver= <drivername>
+ force loading kernel module <drivername>
++This parameter can be specified multiple times.
+ 
+ .SS Debug
+ .TP
+@@ -214,6 +216,7 @@ only activate the LUKS partitions with the given UUID
+ Any "luks-" of the LUKS UUID is removed before comparing to <luks uuid>.
+ The comparisons also matches, if <luks uuid> is only the beginning of the 
+ LUKS UUID, so you don't have to specify the full UUID.
++This parameter can be specified multiple times.
+ .TP
+ .BR rd_NO_CRYPTTAB
+ do not check, if LUKS partition is in /etc/crypttab
+@@ -230,7 +233,8 @@ no MD RAID for imsm/isw raids, use dmraid instead
+ ignore mdadm.conf included in initramfs
+ .TP
+ .BR rd_MD_UUID= "<md uuid>"
+-only activate the raid sets with the given UUID
++only activate the raid sets with the given UUID.
++This parameter can be specified multiple times.
+ 
+ .SS DMRAID
+ .TP
+@@ -238,7 +242,8 @@ only activate the raid sets with the given UUID
+ disable DM RAID detection
+ .TP
+ .BR rd_DM_UUID= "<dmraid uuid>"
+-only activate the raid sets with the given UUID
++only activate the raid sets with the given UUID.
++This parameter can be specified multiple times.
+ 
+ .SS Network
+ .TP
+@@ -251,19 +256,22 @@ auto6: do IPv6 autoconfiguration
+ .TP
+ .BR ip= <interface>:{dhcp|on|any|dhcp6|auto6}
+ dhcp|on|any|dhcp6: get ip from dhcp server on a specific interface
+-
+ auto6: do IPv6 autoconfiguration
++This parameter can be specified multiple times.
++
+ .TP
+ .ad l
+ .BR ip= "\%<client-IP>\::[<server-id>]\::<gateway-IP>\::<netmask>\::<client\%hostname>\::<interface>\::{none|off}"
+ .ad
+ explicit network configuration. If you want do define a IPv6 address, put it in brackets (e.g. [2001:DB8::1]).
++This parameter can be specified multiple times.
+ .TP
+ .BR ifname= <interface>:<MAC>
+ Assign network device name <interface> (ie eth0) to the NIC with MAC <MAC>.
+ Note letters in the MAC-address must be lowercase!
+ Note that if you use this option you \fBmust\fR specify an ifname= argument
+ for all interfaces used in ip= or fcoe= arguments
++This parameter can be specified multiple times.
+ .TP
+ .BR bootdev= <interface>
+ specify network interface to use routing and netroot information from. 
+@@ -371,6 +379,7 @@ same syntax as the kernel module parameter (s390 only)
+ .ad
+ activate DASD device with the given adaptor device bus ID and setting the sysfs attributes
+ to the specified values
++This parameter can be specified multiple times.
+ 
+ .SS ZFCP
+ .TP
+-- 
+1.7.0.1
+
diff --git a/0003-dmraid-parse-different-error-messages.patch b/0003-dmraid-parse-different-error-messages.patch
new file mode 100644
index 0000000..faf27b4
--- /dev/null
+++ b/0003-dmraid-parse-different-error-messages.patch
@@ -0,0 +1,25 @@
+From d693f34afb5f4fccb75e44da2fa8378a67a0e68e Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald@redhat.com>
+Date: Tue, 13 Apr 2010 12:54:12 +0200
+Subject: [PATCH 03/15] dmraid: parse different error messages
+
+---
+ modules.d/90dmraid/dmraid.sh |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/modules.d/90dmraid/dmraid.sh b/modules.d/90dmraid/dmraid.sh
+index 4e47e2d..dba655b 100755
+--- a/modules.d/90dmraid/dmraid.sh
++++ b/modules.d/90dmraid/dmraid.sh
+@@ -10,7 +10,7 @@ DM_CLEANUP="no"
+ info "Scanning for dmraid devices $DM_RAIDS"
+ SETS=$(dmraid -c -s)
+ 
+-if [ "$SETS" = "no raid disks" ]; then
++if [ "$SETS" = "no raid disks" -o "$SETS" = "no raid sets" ]; then
+     return
+ fi
+ 
+-- 
+1.7.0.1
+
diff --git a/0004-init-add-hacky-cdrom-polling-mechanism.patch b/0004-init-add-hacky-cdrom-polling-mechanism.patch
new file mode 100644
index 0000000..4c2af06
--- /dev/null
+++ b/0004-init-add-hacky-cdrom-polling-mechanism.patch
@@ -0,0 +1,38 @@
+From 0e0bf830577b5538ed010cf1eb4b1a57578ac3bb Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald@redhat.com>
+Date: Tue, 13 Apr 2010 13:50:33 +0200
+Subject: [PATCH 04/15] init: add hacky cdrom polling mechanism
+
+---
+ modules.d/99base/init |   14 +++++++++++++-
+ 1 files changed, 13 insertions(+), 1 deletions(-)
+
+diff --git a/modules.d/99base/init b/modules.d/99base/init
+index ab7aafe..b9b6361 100755
+--- a/modules.d/99base/init
++++ b/modules.d/99base/init
+@@ -186,8 +186,20 @@ while :; do
+ 
+     # no more udev jobs and queues empty.
+     sleep 0.5
++
++    # dirty hack for some cdrom drives,
++    # which report no medium for quiet
++    # some time.
++    for cdrom in /sys/block/sr*; do
++	[ -e "$cdrom" ] || continue
++	# skip, if cdrom medium was already found
++        strstr "$(udevadm info --query=env --path=${cdrom##/sys})" \
++	    ID_CDROM_MEDIA && continue
++        echo change > "$cdrom"        
++    done
++    
+     i=$(($i+1))
+-    [ $i -gt 20 ] \
++    [ $i -gt 40 ] \
+         && { flock -s 9 ; emergency_shell "No root device found"; } 9>/.console_lock
+ done
+ unset job
+-- 
+1.7.0.1
+
diff --git a/0005-add-module-btrfs.patch b/0005-add-module-btrfs.patch
new file mode 100644
index 0000000..39267b9
--- /dev/null
+++ b/0005-add-module-btrfs.patch
@@ -0,0 +1,70 @@
+From 58ffd15bfffddd593b1a8f29eb5935a0ce39d2dc Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald@redhat.com>
+Date: Tue, 13 Apr 2010 14:03:05 +0200
+Subject: [PATCH 05/15] add module btrfs
+
+---
+ modules.d/90btrfs/40-btrfs.rules |    7 +++++++
+ modules.d/90btrfs/check          |   10 ++++++++++
+ modules.d/90btrfs/install        |    4 ++++
+ modules.d/95udev-rules/install   |    2 +-
+ 4 files changed, 22 insertions(+), 1 deletions(-)
+ create mode 100644 modules.d/90btrfs/40-btrfs.rules
+ create mode 100755 modules.d/90btrfs/check
+ create mode 100755 modules.d/90btrfs/install
+
+diff --git a/modules.d/90btrfs/40-btrfs.rules b/modules.d/90btrfs/40-btrfs.rules
+new file mode 100644
+index 0000000..e74ba1a
+--- /dev/null
++++ b/modules.d/90btrfs/40-btrfs.rules
+@@ -0,0 +1,7 @@
++SUBSYSTEM!="block", GOTO="btrfs_end"
++ACTION!="add|change", GOTO="btrfs_end"
++
++ENV{ID_FS_TYPE}=="btrfs", RUN+="/sbin/btrfs device scan $env{DEVNAME}"
++
++LABEL="btrfs_end"
++
+diff --git a/modules.d/90btrfs/check b/modules.d/90btrfs/check
+new file mode 100755
+index 0000000..2897d46
+--- /dev/null
++++ b/modules.d/90btrfs/check
+@@ -0,0 +1,10 @@
++#!/bin/bash
++
++# We depend on udev-rules being loaded
++[ "$1" = "-d" ] && exit 0
++
++# if we don't have dmraid installed on the host system, no point
++# in trying to support it in the initramfs.
++which btrfs >/dev/null 2>&1 || exit 1
++
++exit 0
+diff --git a/modules.d/90btrfs/install b/modules.d/90btrfs/install
+new file mode 100755
+index 0000000..130a84d
+--- /dev/null
++++ b/modules.d/90btrfs/install
+@@ -0,0 +1,4 @@
++#!/bin/bash
++
++inst_rules "$moddir/40-btrfs.rules"
++dracut_install btrfs
+diff --git a/modules.d/95udev-rules/install b/modules.d/95udev-rules/install
+index ae64f3e..23693fe 100755
+--- a/modules.d/95udev-rules/install
++++ b/modules.d/95udev-rules/install
+@@ -24,7 +24,7 @@ else
+     inst_rules "$moddir/59-persistent-storage-volid.rules"
+ fi
+ inst_rules "$moddir/61-persistent-storage.rules"
+-    
++
+ for i in \
+ ata_id \
+ cdrom_id \
+-- 
+1.7.0.1
+
diff --git a/0006-teach-dmsquash-live-root-to-use-rootflags.patch b/0006-teach-dmsquash-live-root-to-use-rootflags.patch
new file mode 100644
index 0000000..e5265d0
--- /dev/null
+++ b/0006-teach-dmsquash-live-root-to-use-rootflags.patch
@@ -0,0 +1,30 @@
+From fbf1b5b138df65dc6ff309c6d015e0e5c887aa0e Mon Sep 17 00:00:00 2001
+From: Joey Boggs <jboggs@redhat.com>
+Date: Fri, 26 Mar 2010 10:01:16 -0400
+Subject: [PATCH 06/15] teach dmsquash-live-root to use rootflags
+
+---
+ modules.d/90dmsquash-live/dmsquash-live-root |    7 ++++++-
+ 1 files changed, 6 insertions(+), 1 deletions(-)
+
+diff --git a/modules.d/90dmsquash-live/dmsquash-live-root b/modules.d/90dmsquash-live/dmsquash-live-root
+index b1754dc..c98cdef 100755
+--- a/modules.d/90dmsquash-live/dmsquash-live-root
++++ b/modules.d/90dmsquash-live/dmsquash-live-root
+@@ -172,7 +172,12 @@ if [ -b "$OSMIN_LOOPDEV" ]; then
+     echo "0 $( blockdev --getsz $BASE_LOOPDEV ) snapshot $BASE_LOOPDEV $OSMIN_LOOPDEV p 8" | dmsetup create --readonly live-osimg-min
+ fi
+ 
++ROOTFLAGS="$(getarg rootflags)"
++if [ -n "$ROOTFLAGS" ]; then
++    ROOTFLAGS="-o $ROOTFLAGS"
++fi
++
+ ln -s /dev/mapper/live-rw /dev/root
+-printf '/bin/mount /dev/mapper/live-rw %s\n' "$NEWROOT" > /mount/01-$$-live.sh
++printf '/bin/mount %s /dev/mapper/live-rw %s\n' "$ROOTFLAGS" "$NEWROOT" > /mount/01-$$-live.sh
+ 
+ exit 0
+-- 
+1.7.0.1
+
diff --git a/0007-init-trigger-with-action-add.patch b/0007-init-trigger-with-action-add.patch
new file mode 100644
index 0000000..4173f59
--- /dev/null
+++ b/0007-init-trigger-with-action-add.patch
@@ -0,0 +1,25 @@
+From cd83e4c54d195e12f709fdda279efb15c7c6cbf3 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald@redhat.com>
+Date: Wed, 14 Apr 2010 16:36:30 +0200
+Subject: [PATCH 07/15] init: trigger with --action=add
+
+---
+ modules.d/99base/init |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/modules.d/99base/init b/modules.d/99base/init
+index b9b6361..4696915 100755
+--- a/modules.d/99base/init
++++ b/modules.d/99base/init
+@@ -147,7 +147,7 @@ getarg 'rdbreak=pre-trigger' && emergency_shell -n pre-trigger "Break before pre
+ source_all pre-trigger
+ 
+ # then the rest
+-udevadm trigger $udevtriggeropts  >/dev/null 2>&1
++udevadm trigger --action=add $udevtriggeropts  >/dev/null 2>&1
+ 
+ getarg 'rdbreak=initqueue' && emergency_shell -n initqueue "Break before initqueue"
+ 
+-- 
+1.7.0.1
+
diff --git a/0008-add-missing-paragraph-for-add-drivers.patch b/0008-add-missing-paragraph-for-add-drivers.patch
new file mode 100644
index 0000000..86a2b55
--- /dev/null
+++ b/0008-add-missing-paragraph-for-add-drivers.patch
@@ -0,0 +1,27 @@
+From d2931339823a1ea3a8ea9d13a274720b7057aa83 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald@redhat.com>
+Date: Wed, 14 Apr 2010 17:50:39 +0200
+Subject: [PATCH 08/15] add missing paragraph for --add-drivers
+
+---
+ dracut.8 |    3 ++-
+ 1 files changed, 2 insertions(+), 1 deletions(-)
+
+diff --git a/dracut.8 b/dracut.8
+index 57626fe..834c4f2 100644
+--- a/dracut.8
++++ b/dracut.8
+@@ -28,8 +28,9 @@ omit a space-separated list of dracut modules.
+ add a space-separated list of dracut modules.
+ .TP
+ .BR \-d ", " \-\-drivers " \fILIST\fR"
+-specify a space-separated list of kernel modules to exclusively include#
++specify a space-separated list of kernel modules to exclusively include
+ in the initramfs.
++.TP
+ .BR \-\-add-drivers " \fILIST\fR"
+ specify a space-separated list of kernel modules to add to the initramfs.
+ .TP
+-- 
+1.7.0.1
+
diff --git a/0009-manpage-addition-for-kernel-drivers.patch b/0009-manpage-addition-for-kernel-drivers.patch
new file mode 100644
index 0000000..b38b4bf
--- /dev/null
+++ b/0009-manpage-addition-for-kernel-drivers.patch
@@ -0,0 +1,47 @@
+From 9b17b085f3dbe1e48dfea2ed1b045fbbbc10d3d9 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald@redhat.com>
+Date: Wed, 14 Apr 2010 17:58:56 +0200
+Subject: [PATCH 09/15] manpage addition for kernel drivers
+
+The kernel modules have to be specified without the ".ko" suffix.
+---
+ dracut.8      |    2 ++
+ dracut.conf.5 |    2 ++
+ 2 files changed, 4 insertions(+), 0 deletions(-)
+
+diff --git a/dracut.8 b/dracut.8
+index 834c4f2..31a70fc 100644
+--- a/dracut.8
++++ b/dracut.8
+@@ -30,9 +30,11 @@ add a space-separated list of dracut modules.
+ .BR \-d ", " \-\-drivers " \fILIST\fR"
+ specify a space-separated list of kernel modules to exclusively include
+ in the initramfs.
++The kernel modules have to be specified without the ".ko" suffix.
+ .TP
+ .BR \-\-add-drivers " \fILIST\fR"
+ specify a space-separated list of kernel modules to add to the initramfs.
++The kernel modules have to be specified without the ".ko" suffix.
+ .TP
+ .BR \-\-filesystems " \fILIST\fR"
+ specify a space-separated list of kernel filesystem modules to exclusively 
+diff --git a/dracut.conf.5 b/dracut.conf.5
+index 30bf16f..a781dfb 100644
+--- a/dracut.conf.5
++++ b/dracut.conf.5
+@@ -26,10 +26,12 @@ Add a space-separated list of dracut modules.
+ .BR drivers= \%"[LIST]"
+ Specify a space-separated list of kernel modules to
+ exclusively include in the initramfs.
++The kernel modules have to be specified without the ".ko" suffix.
+ .TP
+ .BR add_drivers= \%"[LIST]"
+ Specify a space-separated list of kernel 
+ modules to add to the initramfs.
++The kernel modules have to be specified without the ".ko" suffix.
+ .TP
+ .BR filesystems= \%"[LIST]"
+ Specify a space-separated list of kernel filesystem
+-- 
+1.7.0.1
+
diff --git a/0010-dracut-add_drivers-from-the-command-line-should-add-.patch b/0010-dracut-add_drivers-from-the-command-line-should-add-.patch
new file mode 100644
index 0000000..5968ffa
--- /dev/null
+++ b/0010-dracut-add_drivers-from-the-command-line-should-add-.patch
@@ -0,0 +1,25 @@
+From 4828beb949f25d894351c7abbe6a4930a1d1d95c Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald@redhat.com>
+Date: Wed, 14 Apr 2010 19:32:44 +0200
+Subject: [PATCH 10/15] dracut: add_drivers from the command line should add up to the conffile
+
+---
+ dracut |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/dracut b/dracut
+index b16e205..8c0adad 100755
+--- a/dracut
++++ b/dracut
+@@ -143,7 +143,7 @@ fi
+ [[ $omit_dracutmodules_l ]] && omit_dracutmodules=$omit_dracutmodules_l
+ [[ $add_dracutmodules_l ]] && add_dracutmodules="$add_dracutmodules $add_dracutmodules_l"
+ [[ $drivers_l ]] && drivers=$drivers_l
+-[[ $add_drivers_l ]] && add_drivers=$add_drivers_l
++[[ $add_drivers_l ]] && add_drivers="$add_drivers $add_drivers_l"
+ [[ $filesystems_l ]] && filesystems=$filesystems_l
+ [[ $drivers_dir_l ]] && drivers_dir=$drivers_dir_l
+ [[ $fw_dir_l ]] && fw_dir=$fw_dir_l
+-- 
+1.7.0.1
+
diff --git a/0011-AUTHORS-updated.patch b/0011-AUTHORS-updated.patch
new file mode 100644
index 0000000..431945e
--- /dev/null
+++ b/0011-AUTHORS-updated.patch
@@ -0,0 +1,48 @@
+From ddbdebb9c855176831a74a727d5900ed3d86193b Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald@redhat.com>
+Date: Thu, 15 Apr 2010 11:54:28 +0200
+Subject: [PATCH 11/15] AUTHORS: updated
+
+---
+ AUTHORS |    6 ++++--
+ 1 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/AUTHORS b/AUTHORS
+index ebb4157..0b449de 100644
+--- a/AUTHORS
++++ b/AUTHORS
+@@ -1,7 +1,7 @@
+ Harald Hoyer <harald@redhat.com>
+ Victor Lowther <victor.lowther@gmail.com>
+-Warren Togami <wtogami@redhat.com>
+ Philippe Seewer <philippe.seewer@bfh.ch>
++Warren Togami <wtogami@redhat.com>
+ Jeremy Katz <katzj@redhat.com>
+ David Dillow <dave@thedillows.org>
+ Andreas Thienemann <andreas@bawue.net>
+@@ -9,6 +9,7 @@ Hans de Goede <hdegoede@redhat.com>
+ Peter Jones <pjones@redhat.com>
+ Luca Berra <bluca@comedia.it>
+ Marc Grimme <grimme@atix.de>
++Andrey Borzenkov <arvidjaar@mail.ru>
+ Bill Nottingham <notting@redhat.com>
+ Daniel Drake <dsd@laptop.org>
+ David Cantrell <dcantrell@redhat.com>
+@@ -16,12 +17,13 @@ Lance Albertson <lance@osuosl.org>
+ Michael Ploujnikov <plouj@somanetworks.com>
+ Alan Jenkins <alan-jenkins@tuffmail.co.uk>
+ Dan HorĂ¡k <dan@danny.cz>
+-Andrey Borzenkov <arvidjaar@mail.ru>
++Joey Boggs <jboggs@redhat.com>
+ Dave Jones <davej@redhat.com>
+ Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
+ Luca Berra <bluca@vodka.it>
+ Michal Schmidt <mschmidt@redhat.com>
+ Mike Snitzer <msnitzer@redhat.com>
++Mike Snitzer <snitzer@redhat.com>
+ Munehiro Matsuda <haro@kgt.co.jp>
+ Peter Rajnoha <prajnoha@redhat.com>
+ Quentin Armitage <quentin@armitage.org.uk>
+-- 
+1.7.0.1
+
diff --git a/0012-kernel-modules-hardcode-sr_mod.patch b/0012-kernel-modules-hardcode-sr_mod.patch
new file mode 100644
index 0000000..657e7b4
--- /dev/null
+++ b/0012-kernel-modules-hardcode-sr_mod.patch
@@ -0,0 +1,27 @@
+From d4abad22883978f60bf4df030186fc92187c757f Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald@redhat.com>
+Date: Thu, 15 Apr 2010 12:47:26 +0200
+Subject: [PATCH 12/15] kernel-modules: hardcode sr_mod
+
+---
+ modules.d/90kernel-modules/installkernel |    4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/modules.d/90kernel-modules/installkernel b/modules.d/90kernel-modules/installkernel
+index 3416e7c..4848f2a 100755
+--- a/modules.d/90kernel-modules/installkernel
++++ b/modules.d/90kernel-modules/installkernel
+@@ -5,8 +5,8 @@ if [[ -z $drivers ]]; then
+ 
+ 	 nm -uPA "$1" | egrep -q "$blockfuncs"
+     }
+-    hostonly='' instmods pcmcia sd_mod scsi_dh scsi_dh_rdac scsi_dh_emc
+-    hostonly='' instmods firewire-ohci
++    hostonly='' instmods sr_mod sd_mod scsi_dh scsi_dh_rdac scsi_dh_emc
++    hostonly='' instmods pcmcia firewire-ohci
+ 
+     # install keyboard support
+     hostonly='' instmods atkbd i8042 usbhid hid-apple ehci-hcd ohci-hcd uhci-hcd
+-- 
+1.7.0.1
+
diff --git a/0013-kernel-modules-only-remove-ocfs2-if-all-filesystems-.patch b/0013-kernel-modules-only-remove-ocfs2-if-all-filesystems-.patch
new file mode 100644
index 0000000..641c0e5
--- /dev/null
+++ b/0013-kernel-modules-only-remove-ocfs2-if-all-filesystems-.patch
@@ -0,0 +1,34 @@
+From e9e93e2ec6f58cfcd7e4680827b242a90a038710 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald@redhat.com>
+Date: Thu, 15 Apr 2010 12:47:52 +0200
+Subject: [PATCH 13/15] kernel-modules: only remove ocfs2, if all filesystems are installed
+
+---
+ modules.d/90kernel-modules/installkernel |    5 +++--
+ 1 files changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/modules.d/90kernel-modules/installkernel b/modules.d/90kernel-modules/installkernel
+index 4848f2a..90b535e 100755
+--- a/modules.d/90kernel-modules/installkernel
++++ b/modules.d/90kernel-modules/installkernel
+@@ -17,14 +17,15 @@ if [[ -z $drivers ]]; then
+     if ! [[ $hostonly ]]; then
+ 	if [[ -z $filesystems ]]; then
+ 	    instmods '=fs'
++	    # hardcoded list of exceptions
++	    # to save a lot of space
++	    rm -fr ${initdir}/lib/modules/*/kernel/fs/ocfs2
+ 	else
+ 	    instmods $filesystems
+ 	fi
+     else
+ 	hostonly='' instmods $(get_fs_type "/dev/block/$(find_root_block_device)")
+     fi
+-    # hardcoded list of exceptions
+-    rm -fr ${initdir}/lib/modules/*/kernel/fs/ocfs2
+ else
+   hostonly='' instmods $drivers $filesystems
+ fi
+-- 
+1.7.0.1
+
diff --git a/0014-dracut.spec-add-btrfs-module.patch b/0014-dracut.spec-add-btrfs-module.patch
new file mode 100644
index 0000000..993aeb5
--- /dev/null
+++ b/0014-dracut.spec-add-btrfs-module.patch
@@ -0,0 +1,24 @@
+From fede5bbcdad4b35baba06eb5c5aebc0df4aa0347 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald@redhat.com>
+Date: Thu, 15 Apr 2010 14:38:38 +0200
+Subject: [PATCH 14/15] dracut.spec: add btrfs module
+
+---
+ dracut.spec |    1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+diff --git a/dracut.spec b/dracut.spec
+index c4bc00d..e2b6f44 100644
+--- a/dracut.spec
++++ b/dracut.spec
+@@ -180,6 +180,7 @@ rm -rf $RPM_BUILD_ROOT
+ %{_datadir}/dracut/modules.d/10rpmversion
+ %{_datadir}/dracut/modules.d/50plymouth
+ %{_datadir}/dracut/modules.d/60xen
++%{_datadir}/dracut/modules.d/90btrfs
+ %{_datadir}/dracut/modules.d/90crypt
+ %{_datadir}/dracut/modules.d/90dm
+ %{_datadir}/dracut/modules.d/90dmraid
+-- 
+1.7.0.1
+
diff --git a/0015-Use-pigz-for-gzipping-if-available.patch b/0015-Use-pigz-for-gzipping-if-available.patch
new file mode 100644
index 0000000..4111bcd
--- /dev/null
+++ b/0015-Use-pigz-for-gzipping-if-available.patch
@@ -0,0 +1,41 @@
+From c91570782c2aa9128f204a21e5d2b516658febae Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Ville=20Skytt=C3=A4?= <ville.skytta@iki.fi>
+Date: Thu, 18 Mar 2010 21:41:22 +0200
+Subject: [PATCH 15/15] Use pigz for gzipping if available.
+
+---
+ dracut           |    3 ++-
+ dracut-catimages |    3 ++-
+ 2 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/dracut b/dracut
+index 8c0adad..0ae07f2 100755
+--- a/dracut
++++ b/dracut
+@@ -303,7 +303,8 @@ if [[ $do_strip = yes ]] ; then
+     done
+ fi
+ 
+-( cd "$initdir"; find . |cpio -R 0:0 -H newc -o --quiet |gzip -9 > "$outfile"; ) 
++type pigz &>/dev/null && gzip=pigz || gzip=gzip
++( cd "$initdir"; find . |cpio -R 0:0 -H newc -o --quiet |$gzip -9 > "$outfile"; ) 
+ if [ $? -ne 0 ]; then
+     derror "dracut: creation of $outfile failed"
+     exit 1
+diff --git a/dracut-catimages b/dracut-catimages
+index b19f20a..d49d0e2 100755
+--- a/dracut-catimages
++++ b/dracut-catimages
+@@ -102,7 +102,8 @@ fi
+ if [[ ! $no_overlay ]]; then
+     ofile="$imagedir/90-overlay.img"
+     dinfo "Creating image $ofile from directory $overlay"
+-    ( cd "$overlay"; find . |cpio --quiet -H newc -o  |gzip -9 > "$ofile"; )
++    type pigz &>/dev/null && gzip=pigz || gzip=gzip
++    ( cd "$overlay"; find . |cpio --quiet -H newc -o |$gzip -9 > "$ofile"; )
+ fi
+ 
+ if [[ ! $no_imagedir ]]; then
+-- 
+1.7.0.1
+
diff --git a/dracut.spec b/dracut.spec
index 8aaf75e..6d71666 100644
--- a/dracut.spec
+++ b/dracut.spec
@@ -20,7 +20,7 @@
 
 Name: dracut
 Version: 005
-Release: 1%{?rdist}
+Release: 2%{?rdist}
 Summary: Initramfs generator using udev
 Group: System Environment/Base          
 License: GPLv2+ 
@@ -28,6 +28,22 @@ URL: http://apps.sourceforge.net/trac/dracut/wiki
 # Source can be generated by 
 # http://dracut.git.sourceforge.net/git/gitweb.cgi?p=dracut/dracut;a=snapshot;h=%{?dashgittag};sf=tgz
 Source0: dracut-%{version}%{?dashgittag}.tar.bz2
+
+Patch1: 0001-dracut.8-fixed-LUKS-paragraph.patch
+Patch2: 0002-dracut.8-add-information-which-parameter-can-be-spec.patch
+Patch3: 0003-dmraid-parse-different-error-messages.patch
+Patch4: 0004-init-add-hacky-cdrom-polling-mechanism.patch
+Patch5: 0005-add-module-btrfs.patch
+Patch6: 0006-teach-dmsquash-live-root-to-use-rootflags.patch
+Patch7: 0007-init-trigger-with-action-add.patch
+Patch8: 0008-add-missing-paragraph-for-add-drivers.patch
+Patch9: 0009-manpage-addition-for-kernel-drivers.patch
+Patch10: 0010-dracut-add_drivers-from-the-command-line-should-add-.patch
+Patch11: 0011-AUTHORS-updated.patch
+Patch12: 0012-kernel-modules-hardcode-sr_mod.patch
+Patch13: 0013-kernel-modules-only-remove-ocfs2-if-all-filesystems-.patch
+Patch15: 0015-Use-pigz-for-gzipping-if-available.patch
+
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 
 %if 0%{?fedora} > 12 || 0%{?rhel} >= 6
@@ -134,6 +150,21 @@ This package contains tools to assemble the local initrd and host configuration.
 %prep
 %setup -q -n %{name}-%{version}%{?dashgittag}
 
+%patch1 -p1
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
+%patch9 -p1
+%patch10 -p1
+%patch11 -p1
+%patch12 -p1
+%patch13 -p1
+%patch15 -p1
+
 %build
 make WITH_SWITCH_ROOT=0%{?with_switch_root}
 
@@ -180,6 +211,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_datadir}/dracut/modules.d/10rpmversion
 %{_datadir}/dracut/modules.d/50plymouth
 %{_datadir}/dracut/modules.d/60xen
+%{_datadir}/dracut/modules.d/90btrfs
 %{_datadir}/dracut/modules.d/90crypt
 %{_datadir}/dracut/modules.d/90dm
 %{_datadir}/dracut/modules.d/90dmraid
@@ -235,6 +267,17 @@ rm -rf $RPM_BUILD_ROOT
 %dir /var/lib/dracut/overlay
 
 %changelog
+* Thu Apr 15 2010 Harald Hoyer <harald@redhat.com> 005-2
+- fixed dracut manpages
+- dmraid parse different error messages
+- add cdrom polling mechanism for slow cdroms
+- add module btrfs
+- teach dmsquash live-root to use rootflags
+- trigger udev with action=add
+- fixed add_drivers handling 
+- add sr_mod
+- use pigz instead of gzip, if available
+
 * Fri Mar 19 2010 Harald Hoyer <harald@redhat.com> 005-1
 - version 005