commit: 54a1de904fbff716e7c513d31e07064a499d4512
Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 24 14:38:51 2019 +0000
Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Sun Nov 24 19:59:17 2019 +0000
URL: https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=54a1de90
gen_configkernel.sh: config_kernel(): Ensure that required kernel options for
--mdadm are set
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>
gen_configkernel.sh | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gen_configkernel.sh b/gen_configkernel.sh
index 6141ba6..7dbcadd 100755
--- a/gen_configkernel.sh
+++ b/gen_configkernel.sh
@@ -340,6 +340,29 @@ config_kernel() {
&& required_kernel_options+=( 'CONFIG_BCACHE' )
fi
+ # Make sure all modues required for MD raid are enabled in the kernel,
if --mdadm
+ if isTrue "${CMD_MDADM}"
+ then
+ print_info 2 "$(get_indent 1)>> Ensure that required kernel
options for MDADM support are set ..."
+ local cfg_CONFIG_BLK_DEV_MD=$(kconfig_get_opt
"${KERNEL_OUTPUTDIR}/.config" "CONFIG_BLK_DEV_MD")
+ case "${cfg_CONFIG_BLK_DEV_MD}" in
+ y|m) ;; # Do nothing
+ *) cfg_CONFIG_BLK_DEV_MD=${newcfg_setting}
+ esac
+
+ kconfig_set_opt "${KERNEL_OUTPUTDIR}/.config" "CONFIG_BLOCK" "y"
+ kconfig_set_opt "${KERNEL_OUTPUTDIR}/.config" "CONFIG_MD" "y"
+ kconfig_set_opt "${KERNEL_OUTPUTDIR}/.config"
"CONFIG_BLK_DEV_DM" "${cfg_CONFIG_BLK_DEV_DM}" \
+ && required_kernel_options+=( 'CONFIG_BLK_DEV_DM' )
+ kconfig_set_opt "${KERNEL_OUTPUTDIR}/.config"
"CONFIG_BLK_DEV_MD" "${cfg_CONFIG_BLK_DEV_MD}" \
+ && required_kernel_options+=( 'CONFIG_BLK_DEV_MD' )
+ kconfig_set_opt "${KERNEL_OUTPUTDIR}/.config"
"CONFIG_MD_LINEAR" "${cfg_CONFIG_BLK_DEV_MD}"
+ kconfig_set_opt "${KERNEL_OUTPUTDIR}/.config" "CONFIG_MD_RAID0"
"${cfg_CONFIG_BLK_DEV_MD}"
+ kconfig_set_opt "${KERNEL_OUTPUTDIR}/.config" "CONFIG_MD_RAID1"
"${cfg_CONFIG_BLK_DEV_MD}"
+ kconfig_set_opt "${KERNEL_OUTPUTDIR}/.config"
"CONFIG_MD_RAID10" "${cfg_CONFIG_BLK_DEV_MD}"
+ kconfig_set_opt "${KERNEL_OUTPUTDIR}/.config"
"CONFIG_MD_RAID456" "${cfg_CONFIG_BLK_DEV_MD}"
+ fi
+
# Make sure lvm modules are enabled in the kernel, if --lvm
if isTrue "${CMD_LVM}"
then