diff --git a/ChangeLog b/ChangeLog index 7b364e7..494bc4a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -5,6 +5,20 @@ # Distributed under the GPL v2 # $Id$ + 16 Mar 2011; Fabio Erculiani **/modules_load: + Add btrfs to MODULES_FS + + 07 Mar 2011; Peter Hjalmarsson defaults/initrd.scripts: + Fix typo where the kernelcmd version "dokeymap" was added to MY_HWOPTS + instead of the HWOPTS version "keymap". + Broke setups where only "keymap=<...>" was added to kernelcmd (bug #356167) + + 24 Feb 2011; Sebastian Pipping ChangeLog: + Fix handling of mdadm.conf (bug #354809) + + Special thanks: + - Peter Hjalmarsson + 10 Feb 2011; Sebastian Pipping genkernel: Bump version to 3.4.13 diff --git a/arch/alpha/modules_load b/arch/alpha/modules_load index 63ef20f..faf099d 100644 --- a/arch/alpha/modules_load +++ b/arch/alpha/modules_load @@ -25,5 +25,5 @@ MODULES_PCMCIA="pcmcia pcmcia_core yenta_socket pd6729 i82092 i82365 tcic ds ide MODULES_USB="ehci-hcd uhci usb-ohci hid usb-storage uhci-hcd ohci-hcd usbhid sl811-hcd hid-a4tech hid-apple hid-belkin hid-cherry hid-chicony hid-cypress hid-dummy hid-ezkey hid-gyration hid-logitech hid-microsoft hid-monterey hid-petalynx hid-pl hid-samsung hid-sony hid-sunplus" # Filesystems -MODULES_FS="ext2 ext3 ext4 reiserfs jfs nfs xfs fuse" +MODULES_FS="ext2 ext3 ext4 btrfs reiserfs jfs nfs xfs fuse" diff --git a/arch/arm/modules_load b/arch/arm/modules_load index b2cf1d1..cd14951 100644 --- a/arch/arm/modules_load +++ b/arch/arm/modules_load @@ -22,5 +22,5 @@ MODULES_PCMCIA="pcmcia pcmcia_core yenta_socket pd6729 i82092 i82365 tcic ds ide MODULES_USB="ehci-hcd uhci usb-ohci hid usb-storage uhci-hcd ohci-hcd usbhid sl811-hcd hid-a4tech hid-apple hid-belkin hid-cherry hid-chicony hid-cypress hid-dummy hid-ezkey hid-gyration hid-logitech hid-microsoft hid-monterey hid-petalynx hid-pl hid-samsung hid-sony hid-sunplus" # Filesystems -MODULES_FS="ext2 ext3 ext4 reiserfs jfs nfs xfs fuse" +MODULES_FS="ext2 ext3 ext4 btrfs reiserfs jfs nfs xfs fuse" diff --git a/arch/ia64/modules_load b/arch/ia64/modules_load index 2612197..51bdc14 100644 --- a/arch/ia64/modules_load +++ b/arch/ia64/modules_load @@ -25,4 +25,4 @@ MODULES_PCMCIA="pcmcia pcmcia_core yenta_socket pd6729 i82092 i82365 tcic ds ide MODULES_USB="ehci-hcd uhci usb-ohci hid usb-storage uhci-hcd ohci-hcd usbhid sl811-hcd hid-a4tech hid-apple hid-belkin hid-cherry hid-chicony hid-cypress hid-dummy hid-ezkey hid-gyration hid-logitech hid-microsoft hid-monterey hid-petalynx hid-pl hid-samsung hid-sony hid-sunplus" # Filesystems -MODULES_FS="ext2 ext3 ext4 reiserfs jfs nfs xfs fuse" +MODULES_FS="ext2 ext3 ext4 btrfs reiserfs jfs nfs xfs fuse" diff --git a/arch/mips/modules_load b/arch/mips/modules_load index 63ef20f..faf099d 100644 --- a/arch/mips/modules_load +++ b/arch/mips/modules_load @@ -25,5 +25,5 @@ MODULES_PCMCIA="pcmcia pcmcia_core yenta_socket pd6729 i82092 i82365 tcic ds ide MODULES_USB="ehci-hcd uhci usb-ohci hid usb-storage uhci-hcd ohci-hcd usbhid sl811-hcd hid-a4tech hid-apple hid-belkin hid-cherry hid-chicony hid-cypress hid-dummy hid-ezkey hid-gyration hid-logitech hid-microsoft hid-monterey hid-petalynx hid-pl hid-samsung hid-sony hid-sunplus" # Filesystems -MODULES_FS="ext2 ext3 ext4 reiserfs jfs nfs xfs fuse" +MODULES_FS="ext2 ext3 ext4 btrfs reiserfs jfs nfs xfs fuse" diff --git a/arch/parisc/modules_load b/arch/parisc/modules_load index 63ef20f..faf099d 100644 --- a/arch/parisc/modules_load +++ b/arch/parisc/modules_load @@ -25,5 +25,5 @@ MODULES_PCMCIA="pcmcia pcmcia_core yenta_socket pd6729 i82092 i82365 tcic ds ide MODULES_USB="ehci-hcd uhci usb-ohci hid usb-storage uhci-hcd ohci-hcd usbhid sl811-hcd hid-a4tech hid-apple hid-belkin hid-cherry hid-chicony hid-cypress hid-dummy hid-ezkey hid-gyration hid-logitech hid-microsoft hid-monterey hid-petalynx hid-pl hid-samsung hid-sony hid-sunplus" # Filesystems -MODULES_FS="ext2 ext3 ext4 reiserfs jfs nfs xfs fuse" +MODULES_FS="ext2 ext3 ext4 btrfs reiserfs jfs nfs xfs fuse" diff --git a/arch/parisc64/modules_load b/arch/parisc64/modules_load index 2612197..51bdc14 100644 --- a/arch/parisc64/modules_load +++ b/arch/parisc64/modules_load @@ -25,4 +25,4 @@ MODULES_PCMCIA="pcmcia pcmcia_core yenta_socket pd6729 i82092 i82365 tcic ds ide MODULES_USB="ehci-hcd uhci usb-ohci hid usb-storage uhci-hcd ohci-hcd usbhid sl811-hcd hid-a4tech hid-apple hid-belkin hid-cherry hid-chicony hid-cypress hid-dummy hid-ezkey hid-gyration hid-logitech hid-microsoft hid-monterey hid-petalynx hid-pl hid-samsung hid-sony hid-sunplus" # Filesystems -MODULES_FS="ext2 ext3 ext4 reiserfs jfs nfs xfs fuse" +MODULES_FS="ext2 ext3 ext4 btrfs reiserfs jfs nfs xfs fuse" diff --git a/arch/ppc/modules_load b/arch/ppc/modules_load index 63ef20f..faf099d 100644 --- a/arch/ppc/modules_load +++ b/arch/ppc/modules_load @@ -25,5 +25,5 @@ MODULES_PCMCIA="pcmcia pcmcia_core yenta_socket pd6729 i82092 i82365 tcic ds ide MODULES_USB="ehci-hcd uhci usb-ohci hid usb-storage uhci-hcd ohci-hcd usbhid sl811-hcd hid-a4tech hid-apple hid-belkin hid-cherry hid-chicony hid-cypress hid-dummy hid-ezkey hid-gyration hid-logitech hid-microsoft hid-monterey hid-petalynx hid-pl hid-samsung hid-sony hid-sunplus" # Filesystems -MODULES_FS="ext2 ext3 ext4 reiserfs jfs nfs xfs fuse" +MODULES_FS="ext2 ext3 ext4 btrfs reiserfs jfs nfs xfs fuse" diff --git a/arch/ppc64/modules_load b/arch/ppc64/modules_load index 2612197..51bdc14 100644 --- a/arch/ppc64/modules_load +++ b/arch/ppc64/modules_load @@ -25,4 +25,4 @@ MODULES_PCMCIA="pcmcia pcmcia_core yenta_socket pd6729 i82092 i82365 tcic ds ide MODULES_USB="ehci-hcd uhci usb-ohci hid usb-storage uhci-hcd ohci-hcd usbhid sl811-hcd hid-a4tech hid-apple hid-belkin hid-cherry hid-chicony hid-cypress hid-dummy hid-ezkey hid-gyration hid-logitech hid-microsoft hid-monterey hid-petalynx hid-pl hid-samsung hid-sony hid-sunplus" # Filesystems -MODULES_FS="ext2 ext3 ext4 reiserfs jfs nfs xfs fuse" +MODULES_FS="ext2 ext3 ext4 btrfs reiserfs jfs nfs xfs fuse" diff --git a/arch/sparc/modules_load b/arch/sparc/modules_load index 63ef20f..faf099d 100644 --- a/arch/sparc/modules_load +++ b/arch/sparc/modules_load @@ -25,5 +25,5 @@ MODULES_PCMCIA="pcmcia pcmcia_core yenta_socket pd6729 i82092 i82365 tcic ds ide MODULES_USB="ehci-hcd uhci usb-ohci hid usb-storage uhci-hcd ohci-hcd usbhid sl811-hcd hid-a4tech hid-apple hid-belkin hid-cherry hid-chicony hid-cypress hid-dummy hid-ezkey hid-gyration hid-logitech hid-microsoft hid-monterey hid-petalynx hid-pl hid-samsung hid-sony hid-sunplus" # Filesystems -MODULES_FS="ext2 ext3 ext4 reiserfs jfs nfs xfs fuse" +MODULES_FS="ext2 ext3 ext4 btrfs reiserfs jfs nfs xfs fuse" diff --git a/arch/sparc64/modules_load b/arch/sparc64/modules_load index 2612197..51bdc14 100644 --- a/arch/sparc64/modules_load +++ b/arch/sparc64/modules_load @@ -25,4 +25,4 @@ MODULES_PCMCIA="pcmcia pcmcia_core yenta_socket pd6729 i82092 i82365 tcic ds ide MODULES_USB="ehci-hcd uhci usb-ohci hid usb-storage uhci-hcd ohci-hcd usbhid sl811-hcd hid-a4tech hid-apple hid-belkin hid-cherry hid-chicony hid-cypress hid-dummy hid-ezkey hid-gyration hid-logitech hid-microsoft hid-monterey hid-petalynx hid-pl hid-samsung hid-sony hid-sunplus" # Filesystems -MODULES_FS="ext2 ext3 ext4 reiserfs jfs nfs xfs fuse" +MODULES_FS="ext2 ext3 ext4 btrfs reiserfs jfs nfs xfs fuse" diff --git a/arch/um/modules_load b/arch/um/modules_load index 55dcc23..dfe4431 100644 --- a/arch/um/modules_load +++ b/arch/um/modules_load @@ -25,5 +25,5 @@ MODULES_PCMCIA="pcmcia pcmcia_core yenta_socket pd6729 i82092 i82365 tcic ds ide MODULES_USB="ehci-hcd uhci usb-ohci hid usb-storage uhci-hcd ohci-hcd usbhid sl811-hcd hid-a4tech hid-apple hid-belkin hid-cherry hid-chicony hid-cypress hid-dummy hid-ezkey hid-gyration hid-logitech hid-microsoft hid-monterey hid-petalynx hid-pl hid-samsung hid-sony hid-sunplus" # Filesystems -MODULES_FS="ext2 ext3 ext4 reiserfs jfs nfs xfs fuse" +MODULES_FS="ext2 ext3 ext4 btrfs reiserfs jfs nfs xfs fuse" diff --git a/arch/x86/modules_load b/arch/x86/modules_load index cc50156..ba2089f 100644 --- a/arch/x86/modules_load +++ b/arch/x86/modules_load @@ -26,5 +26,5 @@ MODULES_PCMCIA="pcmcia pcmcia_core yenta_socket pd6729 i82092 i82365 tcic ds ide MODULES_USB="ehci-hcd uhci usb-ohci hid usb-storage uhci-hcd ohci-hcd usbhid sl811-hcd hid-a4tech hid-apple hid-belkin hid-cherry hid-chicony hid-cypress hid-dummy hid-ezkey hid-gyration hid-logitech hid-microsoft hid-monterey hid-petalynx hid-pl hid-samsung hid-sony hid-sunplus" # Filesystems -MODULES_FS="ext2 ext3 ext4 reiserfs jfs nfs xfs fuse" +MODULES_FS="ext2 ext3 ext4 btrfs reiserfs jfs nfs xfs fuse" diff --git a/arch/x86_64/modules_load b/arch/x86_64/modules_load index fe26891..cabed08 100644 --- a/arch/x86_64/modules_load +++ b/arch/x86_64/modules_load @@ -25,4 +25,4 @@ MODULES_PCMCIA="pcmcia pcmcia_core yenta_socket pd6729 i82092 i82365 tcic ds ide MODULES_USB="ehci-hcd uhci usb-ohci hid usb-storage uhci-hcd ohci-hcd usbhid sl811-hcd hid-a4tech hid-apple hid-belkin hid-cherry hid-chicony hid-cypress hid-dummy hid-ezkey hid-gyration hid-logitech hid-microsoft hid-monterey hid-petalynx hid-pl hid-samsung hid-sony hid-sunplus" # Filesystems -MODULES_FS="ext2 ext3 ext4 reiserfs jfs nfs xfs fuse" +MODULES_FS="ext2 ext3 ext4 btrfs reiserfs jfs nfs xfs fuse" diff --git a/defaults/initrd.scripts b/defaults/initrd.scripts index f7f01de..10fdb13 100755 --- a/defaults/initrd.scripts +++ b/defaults/initrd.scripts @@ -466,7 +466,7 @@ cmdline_hwopts() { fi if [ "$(echo ${y} | cut -b -7)" = "keymap=" ] then - MY_HWOPTS="${MY_HWOPTS} dokeymap" + MY_HWOPTS="${MY_HWOPTS} keymap" fi done done @@ -621,11 +621,6 @@ startVolumes() { if [ "${USE_MDADM}" = '1' ] then - if [ ! -e '/etc/mdadm.conf' ] - then - echo "DEVICE /dev/sd[a-z]* /dev/hd[a-z]*" >/etc/mdadm.conf - /sbin/mdadm --examine --scan >>/etc/mdadm.conf - fi /sbin/mdadm --assemble --scan fi diff --git a/defaults/modules_load b/defaults/modules_load index 47643a1..3365b97 100644 --- a/defaults/modules_load +++ b/defaults/modules_load @@ -25,5 +25,5 @@ MODULES_PCMCIA="pcmcia pcmcia_core yenta_socket pd6729 i82092 i82365 tcic ds ide MODULES_USB="ehci-hcd uhci usb-ohci hid usb-storage uhci-hcd ohci-hcd usbhid sl811-hcd" # Filesystems -MODULES_FS="ext2 ext3 ext4 reiserfs jfs nfs xfs fuse" +MODULES_FS="ext2 ext3 ext4 btrfs reiserfs jfs nfs xfs fuse" diff --git a/doc/genkernel.8.txt b/doc/genkernel.8.txt index cd276d2..a74df82 100644 --- a/doc/genkernel.8.txt +++ b/doc/genkernel.8.txt @@ -246,11 +246,16 @@ INITIALIZATION exist. *--mdadm*:: - Copy '/etc/mdadm.conf' and mdadm/mdmon binaries to initramfs. + Include mdadm/mdmon support. Without sys-fs/mdadm[static] installed, this will compile mdadm for you. +*--mdadm-config*=:: + Use as configfile for MDADM. + By default the ramdisk will be built *without* an mdadm.conf and + will auto-detect arrays during boot-up. + *--dmraid*:: - Add DMRAID support. + Include DMRAID support. *--multipath*:: Include Multipath support diff --git a/gen_cmdline.sh b/gen_cmdline.sh index ebf69ea..506ca3f 100755 --- a/gen_cmdline.sh +++ b/gen_cmdline.sh @@ -79,7 +79,8 @@ longusage() { echo " --> 'emerge evms' in the host operating system" echo " first" echo " --lvm Include LVM support" - echo " --mdadm Copy /etc/mdadm.conf to initramfs" + echo " --mdadm Include MDADM/MDMON support" + echo " --mdadm-config= Use file as mdadm.conf in initramfs" echo " --dmraid Include DMRAID support" echo " --multipath Include Multipath support" echo " --iscsi Include iSCSI support" @@ -248,6 +249,10 @@ parse_cmdline() { CMD_MDADM=1 print_info 2 "CMD_MDADM: $CMD_MDADM" ;; + --mdadm-config=*) + CMD_MDADM_CONFIG=`parse_opt "$*"` + print_info 2 "CMD_MDADM_CONFIG: $CMD_MDADM_CONFIG" + ;; --no-busybox) CMD_BUSYBOX=0 print_info 2 "CMD_BUSYBOX: ${CMD_BUSYBOX}" diff --git a/gen_determineargs.sh b/gen_determineargs.sh index a55ccec..e680569 100755 --- a/gen_determineargs.sh +++ b/gen_determineargs.sh @@ -119,6 +119,7 @@ determine_real_args() { set_config_with_override 1 LUKS CMD_LUKS set_config_with_override 1 GPG CMD_GPG set_config_with_override 1 MDADM CMD_MDADM + set_config_with_override 2 MDADM_CONFIG CMD_MDADM_CONFIG set_config_with_override 1 MULTIPATH CMD_MULTIPATH set_config_with_override 1 FIRMWARE CMD_FIRMWARE set_config_with_override 2 FIRMWARE_DIR CMD_FIRMWARE_DIR "/lib/firmware" diff --git a/gen_initramfs.sh b/gen_initramfs.sh index 582df2c..2d017fd 100755 --- a/gen_initramfs.sh +++ b/gen_initramfs.sh @@ -342,8 +342,19 @@ append_mdadm(){ mkdir -p "${TEMP}/initramfs-mdadm-temp/sbin/" if [ "${MDADM}" = '1' ] then - cp -a /etc/mdadm.conf "${TEMP}/initramfs-mdadm-temp/etc" \ - || gen_die "Could not copy mdadm.conf!" + if [ -n "${MDADM_CONFIG}" ] + then + if [ -f "${MDADM_CONFIG}" ] + then + cp -a "${MDADM_CONFIG}" "${TEMP}/initramfs-mdadm-temp/etc/mdadm.conf" \ + || gen_die "Could not copy mdadm.conf!" + else + gen_die '${MDADM_CONFIG} does not exist!' + fi + else + print_info 1 ' MDADM: Skipping inclusion of mdadm.conf' + fi + if [ -e '/sbin/mdadm' ] && LC_ALL="C" ldd /sbin/mdadm | grep -q 'not a dynamic executable' \ && [ -e '/sbin/mdmon' ] && LC_ALL="C" ldd /sbin/mdmon | grep -q 'not a dynamic executable' then diff --git a/genkernel.conf b/genkernel.conf index 779d71f..a5988da 100644 --- a/genkernel.conf +++ b/genkernel.conf @@ -70,10 +70,15 @@ USECOLOR="yes" # If included, busybox is rebuilt if the cached copy is out of date. # BUSYBOX="yes" -# Copy /etc/mdadm.conf, mdadm/mdmon binaries to initramfs. +# Includes mdadm/mdmon binaries in initramfs. # Without sys-fs/mdadm[static] installed, this will build a static mdadm. # MDADM="no" +# Specify a custom mdadm.conf. +# By default the ramdisk will be built *without* an mdadm.conf and will auto-detect +# arrays during bootup. Usually, this should not be needed. +# MDADM_CONFIG="/etc/mdadm.conf" + # Add Multipath support. # MULTIPATH="no"