From e6de60283bbe7b9aa9a7934609a183893ce543a1 Mon Sep 17 00:00:00 2001 From: "Robin H. Johnson" Date: Sat, 13 Oct 2012 23:23:15 +0000 Subject: [PATCH] Bug #286187: Complete multipath support. Somewhere in the mists of time we lost part of the multipath patch, so we were bundling the userspace, but not the kernel modules, or ever using it. Signed-off-by: Robin H. Johnson --- ChangeLog | 9 +++++++++ arch/alpha/modules_load | 1 + arch/arm/modules_load | 1 + arch/ia64/modules_load | 1 + arch/mips/modules_load | 1 + arch/parisc/modules_load | 1 + arch/parisc64/modules_load | 1 + arch/ppc/modules_load | 1 + arch/ppc64/modules_load | 1 + arch/sparc/modules_load | 1 + arch/sparc64/modules_load | 1 + arch/um/modules_load | 1 + arch/x86/modules_load | 1 + arch/x86_64/modules_load | 1 + defaults/initrd.scripts | 10 ++++++++++ defaults/linuxrc | 4 ++++ defaults/modules_load | 1 + doc/genkernel.8.txt | 3 +++ gen_configkernel.sh | 8 ++++++++ gen_initramfs.sh | 5 ++++- 20 files changed, 52 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 05484d9..bb5e916 100644 --- a/ChangeLog +++ b/ChangeLog @@ -5,6 +5,15 @@ # Distributed under the GPL v2 # $Id$ + 13 Oct 2012; Robin H. Johnson arch/alpha/modules_load, + arch/arm/modules_load, arch/ia64/modules_load, arch/mips/modules_load, + arch/parisc/modules_load, arch/parisc64/modules_load, arch/ppc/modules_load, + arch/ppc64/modules_load, arch/sparc/modules_load, arch/sparc64/modules_load, + arch/um/modules_load, arch/x86/modules_load, arch/x86_64/modules_load, + defaults/initrd.scripts, defaults/linuxrc, defaults/modules_load, + gen_configkernel.sh, gen_initramfs.sh: + Bug #286187: Complete multipath support. + 13 Oct 2012; Robin H. Johnson defaults/initrd.defaults, defaults/initrd.scripts, defaults/linuxrc, doc/genkernel.8.txt: Bug #351873: More livecd control, and initramfs livecd argument diff --git a/arch/alpha/modules_load b/arch/alpha/modules_load index 39199d3..5ff3c0a 100644 --- a/arch/alpha/modules_load +++ b/arch/alpha/modules_load @@ -5,6 +5,7 @@ MODULES_ATARAID="ataraid pdcraid hptraid" MODULES_DMRAID="dm-mod dm-mirror" MODULES_LVM="dm-mod dm-snapshot dm-mirror dm-bbr dm-bufio dm-crypt dm-delay dm-flakey dm-log dm-log-userspace dm-multipath dm-queue-length dm-raid dm-region-hash dm-round-robin dm-service-time dm-thin-pool dm-persistent-data libcrc32c dm-zero" MODULES_MDADM="dm-mod dm-snapshot dm-mirror dm-bbr dm-raid dm-crypt raid0 raid1 raid456 raid5 raid6 raid10 linear multipath" +MODULES_MULTIPATH="dm-mod dm-multipath dm-round-robin dm-rdac dm-queue-length dm-service-time" # Hardware (IDE/SCSI/SATA) MODULES_PATA="pata_mpiix pata_pdc2027x pata_radisys pata_sil680 pata_rz1000 pata_efar pata_cmd64x pata_hpt366 pata_hpt37x pata_hpt3x3 pata_hpt3x2n pata_optidma pata_it821x pata_artop pata_oldpiix pata_cypress pata_platform pata_serverworks pata_legacy pata_ns87410 pata_ns87415 pata_pcmcia pata_isapnp pata_it8213 pata_ali pata_amd pata_opti pata_atiixp pata_triflex pata_pdc202xx_old pata_sc1200 pata_qdi pata_netcell pata_sis pata_hpt3x2n pata_marvell pata_jmicron pata_via pata_cs5520 pata_cs5530 pata_cs5535 pata_sl82c105 libata" diff --git a/arch/arm/modules_load b/arch/arm/modules_load index 6c09869..509b59d 100644 --- a/arch/arm/modules_load +++ b/arch/arm/modules_load @@ -5,6 +5,7 @@ MODULES_ATARAID="ataraid pdcraid hptraid" MODULES_DMRAID="dm-mod dm-mirror" MODULES_LVM="dm-mod dm-snapshot dm-mirror dm-bbr dm-bufio dm-crypt dm-delay dm-flakey dm-log dm-log-userspace dm-multipath dm-queue-length dm-raid dm-region-hash dm-round-robin dm-service-time dm-thin-pool dm-persistent-data libcrc32c dm-zero" MODULES_MDADM="dm-mod dm-snapshot dm-mirror dm-bbr dm-raid dm-crypt raid0 raid1 raid456 raid5 raid6 raid10 linear multipath" +MODULES_MULTIPATH="dm-mod dm-multipath dm-round-robin dm-rdac dm-queue-length dm-service-time" # Hardware (IDE/SCSI/SATA) MODULES_PATA="pata_mpiix pata_pdc2027x pata_radisys pata_sil680 pata_rz1000 pata_efar pata_cmd64x pata_hpt366 pata_hpt37x pata_hpt3x3 pata_hpt3x2n pata_optidma pata_it821x pata_artop pata_oldpiix pata_cypress pata_platform pata_serverworks pata_legacy pata_ns87410 pata_ns87415 pata_pcmcia pata_isapnp pata_it8213 pata_ali pata_amd pata_opti pata_atiixp pata_triflex pata_pdc202xx_old pata_sc1200 pata_qdi pata_netcell pata_sis pata_hpt3x2n pata_marvell pata_jmicron pata_via pata_cs5520 pata_cs5530 pata_cs5535 pata_sl82c105 libata" diff --git a/arch/ia64/modules_load b/arch/ia64/modules_load index 58d60c8..bf5f143 100644 --- a/arch/ia64/modules_load +++ b/arch/ia64/modules_load @@ -5,6 +5,7 @@ MODULES_ATARAID="ataraid pdcraid hptraid" MODULES_DMRAID="dm-mod dm-mirror" MODULES_LVM="dm-mod dm-snapshot dm-mirror dm-bbr dm-bufio dm-crypt dm-delay dm-flakey dm-log dm-log-userspace dm-multipath dm-queue-length dm-raid dm-region-hash dm-round-robin dm-service-time dm-thin-pool dm-persistent-data libcrc32c dm-zero" MODULES_MDADM="dm-mod dm-snapshot dm-mirror dm-bbr dm-raid dm-crypt raid0 raid1 raid456 raid5 raid6 raid10 linear multipath" +MODULES_MULTIPATH="dm-mod dm-multipath dm-round-robin dm-rdac dm-queue-length dm-service-time" # Hardware (IDE/SCSI/SATA) MODULES_PATA="pata_mpiix pata_pdc2027x pata_radisys pata_sil680 pata_rz1000 pata_efar pata_cmd64x pata_hpt366 pata_hpt37x pata_hpt3x3 pata_hpt3x2n pata_optidma pata_it821x pata_artop pata_oldpiix pata_cypress pata_platform pata_serverworks pata_legacy pata_ns87410 pata_ns87415 pata_pcmcia pata_isapnp pata_it8213 pata_ali pata_amd pata_opti pata_atiixp pata_triflex pata_pdc202xx_old pata_sc1200 pata_qdi pata_netcell pata_sis pata_hpt3x2n pata_marvell pata_jmicron pata_via pata_cs5520 pata_cs5530 pata_cs5535 pata_sl82c105 libata" diff --git a/arch/mips/modules_load b/arch/mips/modules_load index 39199d3..5ff3c0a 100644 --- a/arch/mips/modules_load +++ b/arch/mips/modules_load @@ -5,6 +5,7 @@ MODULES_ATARAID="ataraid pdcraid hptraid" MODULES_DMRAID="dm-mod dm-mirror" MODULES_LVM="dm-mod dm-snapshot dm-mirror dm-bbr dm-bufio dm-crypt dm-delay dm-flakey dm-log dm-log-userspace dm-multipath dm-queue-length dm-raid dm-region-hash dm-round-robin dm-service-time dm-thin-pool dm-persistent-data libcrc32c dm-zero" MODULES_MDADM="dm-mod dm-snapshot dm-mirror dm-bbr dm-raid dm-crypt raid0 raid1 raid456 raid5 raid6 raid10 linear multipath" +MODULES_MULTIPATH="dm-mod dm-multipath dm-round-robin dm-rdac dm-queue-length dm-service-time" # Hardware (IDE/SCSI/SATA) MODULES_PATA="pata_mpiix pata_pdc2027x pata_radisys pata_sil680 pata_rz1000 pata_efar pata_cmd64x pata_hpt366 pata_hpt37x pata_hpt3x3 pata_hpt3x2n pata_optidma pata_it821x pata_artop pata_oldpiix pata_cypress pata_platform pata_serverworks pata_legacy pata_ns87410 pata_ns87415 pata_pcmcia pata_isapnp pata_it8213 pata_ali pata_amd pata_opti pata_atiixp pata_triflex pata_pdc202xx_old pata_sc1200 pata_qdi pata_netcell pata_sis pata_hpt3x2n pata_marvell pata_jmicron pata_via pata_cs5520 pata_cs5530 pata_cs5535 pata_sl82c105 libata" diff --git a/arch/parisc/modules_load b/arch/parisc/modules_load index 39199d3..5ff3c0a 100644 --- a/arch/parisc/modules_load +++ b/arch/parisc/modules_load @@ -5,6 +5,7 @@ MODULES_ATARAID="ataraid pdcraid hptraid" MODULES_DMRAID="dm-mod dm-mirror" MODULES_LVM="dm-mod dm-snapshot dm-mirror dm-bbr dm-bufio dm-crypt dm-delay dm-flakey dm-log dm-log-userspace dm-multipath dm-queue-length dm-raid dm-region-hash dm-round-robin dm-service-time dm-thin-pool dm-persistent-data libcrc32c dm-zero" MODULES_MDADM="dm-mod dm-snapshot dm-mirror dm-bbr dm-raid dm-crypt raid0 raid1 raid456 raid5 raid6 raid10 linear multipath" +MODULES_MULTIPATH="dm-mod dm-multipath dm-round-robin dm-rdac dm-queue-length dm-service-time" # Hardware (IDE/SCSI/SATA) MODULES_PATA="pata_mpiix pata_pdc2027x pata_radisys pata_sil680 pata_rz1000 pata_efar pata_cmd64x pata_hpt366 pata_hpt37x pata_hpt3x3 pata_hpt3x2n pata_optidma pata_it821x pata_artop pata_oldpiix pata_cypress pata_platform pata_serverworks pata_legacy pata_ns87410 pata_ns87415 pata_pcmcia pata_isapnp pata_it8213 pata_ali pata_amd pata_opti pata_atiixp pata_triflex pata_pdc202xx_old pata_sc1200 pata_qdi pata_netcell pata_sis pata_hpt3x2n pata_marvell pata_jmicron pata_via pata_cs5520 pata_cs5530 pata_cs5535 pata_sl82c105 libata" diff --git a/arch/parisc64/modules_load b/arch/parisc64/modules_load index 58d60c8..bf5f143 100644 --- a/arch/parisc64/modules_load +++ b/arch/parisc64/modules_load @@ -5,6 +5,7 @@ MODULES_ATARAID="ataraid pdcraid hptraid" MODULES_DMRAID="dm-mod dm-mirror" MODULES_LVM="dm-mod dm-snapshot dm-mirror dm-bbr dm-bufio dm-crypt dm-delay dm-flakey dm-log dm-log-userspace dm-multipath dm-queue-length dm-raid dm-region-hash dm-round-robin dm-service-time dm-thin-pool dm-persistent-data libcrc32c dm-zero" MODULES_MDADM="dm-mod dm-snapshot dm-mirror dm-bbr dm-raid dm-crypt raid0 raid1 raid456 raid5 raid6 raid10 linear multipath" +MODULES_MULTIPATH="dm-mod dm-multipath dm-round-robin dm-rdac dm-queue-length dm-service-time" # Hardware (IDE/SCSI/SATA) MODULES_PATA="pata_mpiix pata_pdc2027x pata_radisys pata_sil680 pata_rz1000 pata_efar pata_cmd64x pata_hpt366 pata_hpt37x pata_hpt3x3 pata_hpt3x2n pata_optidma pata_it821x pata_artop pata_oldpiix pata_cypress pata_platform pata_serverworks pata_legacy pata_ns87410 pata_ns87415 pata_pcmcia pata_isapnp pata_it8213 pata_ali pata_amd pata_opti pata_atiixp pata_triflex pata_pdc202xx_old pata_sc1200 pata_qdi pata_netcell pata_sis pata_hpt3x2n pata_marvell pata_jmicron pata_via pata_cs5520 pata_cs5530 pata_cs5535 pata_sl82c105 libata" diff --git a/arch/ppc/modules_load b/arch/ppc/modules_load index 39199d3..5ff3c0a 100644 --- a/arch/ppc/modules_load +++ b/arch/ppc/modules_load @@ -5,6 +5,7 @@ MODULES_ATARAID="ataraid pdcraid hptraid" MODULES_DMRAID="dm-mod dm-mirror" MODULES_LVM="dm-mod dm-snapshot dm-mirror dm-bbr dm-bufio dm-crypt dm-delay dm-flakey dm-log dm-log-userspace dm-multipath dm-queue-length dm-raid dm-region-hash dm-round-robin dm-service-time dm-thin-pool dm-persistent-data libcrc32c dm-zero" MODULES_MDADM="dm-mod dm-snapshot dm-mirror dm-bbr dm-raid dm-crypt raid0 raid1 raid456 raid5 raid6 raid10 linear multipath" +MODULES_MULTIPATH="dm-mod dm-multipath dm-round-robin dm-rdac dm-queue-length dm-service-time" # Hardware (IDE/SCSI/SATA) MODULES_PATA="pata_mpiix pata_pdc2027x pata_radisys pata_sil680 pata_rz1000 pata_efar pata_cmd64x pata_hpt366 pata_hpt37x pata_hpt3x3 pata_hpt3x2n pata_optidma pata_it821x pata_artop pata_oldpiix pata_cypress pata_platform pata_serverworks pata_legacy pata_ns87410 pata_ns87415 pata_pcmcia pata_isapnp pata_it8213 pata_ali pata_amd pata_opti pata_atiixp pata_triflex pata_pdc202xx_old pata_sc1200 pata_qdi pata_netcell pata_sis pata_hpt3x2n pata_marvell pata_jmicron pata_via pata_cs5520 pata_cs5530 pata_cs5535 pata_sl82c105 libata" diff --git a/arch/ppc64/modules_load b/arch/ppc64/modules_load index 58d60c8..bf5f143 100644 --- a/arch/ppc64/modules_load +++ b/arch/ppc64/modules_load @@ -5,6 +5,7 @@ MODULES_ATARAID="ataraid pdcraid hptraid" MODULES_DMRAID="dm-mod dm-mirror" MODULES_LVM="dm-mod dm-snapshot dm-mirror dm-bbr dm-bufio dm-crypt dm-delay dm-flakey dm-log dm-log-userspace dm-multipath dm-queue-length dm-raid dm-region-hash dm-round-robin dm-service-time dm-thin-pool dm-persistent-data libcrc32c dm-zero" MODULES_MDADM="dm-mod dm-snapshot dm-mirror dm-bbr dm-raid dm-crypt raid0 raid1 raid456 raid5 raid6 raid10 linear multipath" +MODULES_MULTIPATH="dm-mod dm-multipath dm-round-robin dm-rdac dm-queue-length dm-service-time" # Hardware (IDE/SCSI/SATA) MODULES_PATA="pata_mpiix pata_pdc2027x pata_radisys pata_sil680 pata_rz1000 pata_efar pata_cmd64x pata_hpt366 pata_hpt37x pata_hpt3x3 pata_hpt3x2n pata_optidma pata_it821x pata_artop pata_oldpiix pata_cypress pata_platform pata_serverworks pata_legacy pata_ns87410 pata_ns87415 pata_pcmcia pata_isapnp pata_it8213 pata_ali pata_amd pata_opti pata_atiixp pata_triflex pata_pdc202xx_old pata_sc1200 pata_qdi pata_netcell pata_sis pata_hpt3x2n pata_marvell pata_jmicron pata_via pata_cs5520 pata_cs5530 pata_cs5535 pata_sl82c105 libata" diff --git a/arch/sparc/modules_load b/arch/sparc/modules_load index 39199d3..5ff3c0a 100644 --- a/arch/sparc/modules_load +++ b/arch/sparc/modules_load @@ -5,6 +5,7 @@ MODULES_ATARAID="ataraid pdcraid hptraid" MODULES_DMRAID="dm-mod dm-mirror" MODULES_LVM="dm-mod dm-snapshot dm-mirror dm-bbr dm-bufio dm-crypt dm-delay dm-flakey dm-log dm-log-userspace dm-multipath dm-queue-length dm-raid dm-region-hash dm-round-robin dm-service-time dm-thin-pool dm-persistent-data libcrc32c dm-zero" MODULES_MDADM="dm-mod dm-snapshot dm-mirror dm-bbr dm-raid dm-crypt raid0 raid1 raid456 raid5 raid6 raid10 linear multipath" +MODULES_MULTIPATH="dm-mod dm-multipath dm-round-robin dm-rdac dm-queue-length dm-service-time" # Hardware (IDE/SCSI/SATA) MODULES_PATA="pata_mpiix pata_pdc2027x pata_radisys pata_sil680 pata_rz1000 pata_efar pata_cmd64x pata_hpt366 pata_hpt37x pata_hpt3x3 pata_hpt3x2n pata_optidma pata_it821x pata_artop pata_oldpiix pata_cypress pata_platform pata_serverworks pata_legacy pata_ns87410 pata_ns87415 pata_pcmcia pata_isapnp pata_it8213 pata_ali pata_amd pata_opti pata_atiixp pata_triflex pata_pdc202xx_old pata_sc1200 pata_qdi pata_netcell pata_sis pata_hpt3x2n pata_marvell pata_jmicron pata_via pata_cs5520 pata_cs5530 pata_cs5535 pata_sl82c105 libata" diff --git a/arch/sparc64/modules_load b/arch/sparc64/modules_load index 58d60c8..bf5f143 100644 --- a/arch/sparc64/modules_load +++ b/arch/sparc64/modules_load @@ -5,6 +5,7 @@ MODULES_ATARAID="ataraid pdcraid hptraid" MODULES_DMRAID="dm-mod dm-mirror" MODULES_LVM="dm-mod dm-snapshot dm-mirror dm-bbr dm-bufio dm-crypt dm-delay dm-flakey dm-log dm-log-userspace dm-multipath dm-queue-length dm-raid dm-region-hash dm-round-robin dm-service-time dm-thin-pool dm-persistent-data libcrc32c dm-zero" MODULES_MDADM="dm-mod dm-snapshot dm-mirror dm-bbr dm-raid dm-crypt raid0 raid1 raid456 raid5 raid6 raid10 linear multipath" +MODULES_MULTIPATH="dm-mod dm-multipath dm-round-robin dm-rdac dm-queue-length dm-service-time" # Hardware (IDE/SCSI/SATA) MODULES_PATA="pata_mpiix pata_pdc2027x pata_radisys pata_sil680 pata_rz1000 pata_efar pata_cmd64x pata_hpt366 pata_hpt37x pata_hpt3x3 pata_hpt3x2n pata_optidma pata_it821x pata_artop pata_oldpiix pata_cypress pata_platform pata_serverworks pata_legacy pata_ns87410 pata_ns87415 pata_pcmcia pata_isapnp pata_it8213 pata_ali pata_amd pata_opti pata_atiixp pata_triflex pata_pdc202xx_old pata_sc1200 pata_qdi pata_netcell pata_sis pata_hpt3x2n pata_marvell pata_jmicron pata_via pata_cs5520 pata_cs5530 pata_cs5535 pata_sl82c105 libata" diff --git a/arch/um/modules_load b/arch/um/modules_load index 8a67d90..db48f1a 100644 --- a/arch/um/modules_load +++ b/arch/um/modules_load @@ -5,6 +5,7 @@ MODULES_ATARAID="ataraid pdcraid hptraid" MODULES_DMRAID="dm-mod dm-mirror" MODULES_LVM="dm-mod dm-snapshot dm-mirror dm-bbr dm-bufio dm-crypt dm-delay dm-flakey dm-log dm-log-userspace dm-multipath dm-queue-length dm-raid dm-region-hash dm-round-robin dm-service-time dm-thin-pool dm-persistent-data libcrc32c dm-zero" MODULES_MDADM="dm-mod dm-snapshot dm-mirror dm-bbr dm-raid dm-crypt raid0 raid1 raid456 raid5 raid6 raid10 linear multipath" +MODULES_MULTIPATH="dm-mod dm-multipath dm-round-robin dm-rdac dm-queue-length dm-service-time" # Hardware (IDE/SCSI/SATA) MODULES_PATA="pata_mpiix pata_pdc2027x pata_radisys pata_sil680 pata_rz1000 pata_efar pata_cmd64x pata_hpt366 pata_hpt37x pata_hpt3x3 pata_hpt3x2n pata_optidma pata_it821x pata_artop pata_oldpiix pata_cypress pata_platform pata_serverworks pata_legacy pata_ns87410 pata_ns87415 pata_pcmcia pata_isapnp pata_it8213 pata_ali pata_amd pata_opti pata_atiixp pata_triflex pata_pdc202xx_old pata_sc1200 pata_qdi pata_netcell pata_sis pata_hpt3x2n pata_marvell pata_jmicron pata_via pata_cs5520 pata_cs5530 pata_cs5535 pata_sl82c105 libata" diff --git a/arch/x86/modules_load b/arch/x86/modules_load index 5ea5cc0..5bf348c 100644 --- a/arch/x86/modules_load +++ b/arch/x86/modules_load @@ -6,6 +6,7 @@ MODULES_ATARAID="ataraid pdcraid hptraid" MODULES_DMRAID="dm-mod dm-mirror dm-crypt" MODULES_LVM="dm-mod dm-snapshot dm-mirror dm-bbr dm-bufio dm-crypt dm-delay dm-flakey dm-log dm-log-userspace dm-multipath dm-queue-length dm-raid dm-region-hash dm-round-robin dm-service-time dm-thin-pool dm-persistent-data libcrc32c dm-zero" MODULES_MDADM="dm-mod dm-snapshot dm-mirror dm-bbr dm-raid dm-crypt raid0 raid1 raid456 raid5 raid6 raid10 linear multipath" +MODULES_MULTIPATH="dm-mod dm-multipath dm-round-robin dm-rdac dm-queue-length dm-service-time" # Hardware (IDE/SCSI/SATA) MODULES_PATA="pata_mpiix pata_pdc2027x pata_radisys pata_sil680 pata_rz1000 pata_efar pata_cmd64x pata_hpt366 pata_hpt37x pata_hpt3x3 pata_hpt3x2n pata_optidma pata_it821x pata_artop pata_oldpiix pata_cypress pata_platform pata_serverworks pata_legacy pata_ns87410 pata_ns87415 pata_pcmcia pata_isapnp pata_it8213 pata_ali pata_amd pata_opti pata_atiixp pata_triflex pata_pdc202xx_old pata_sc1200 pata_qdi pata_netcell pata_sis pata_hpt3x2n pata_marvell pata_jmicron pata_via pata_cs5520 pata_cs5530 pata_cs5535 pata_sl82c105 libata" diff --git a/arch/x86_64/modules_load b/arch/x86_64/modules_load index f8e45d3..1cfc4f4 100644 --- a/arch/x86_64/modules_load +++ b/arch/x86_64/modules_load @@ -5,6 +5,7 @@ MODULES_ATARAID="ataraid pdcraid hptraid" MODULES_DMRAID="dm-mod dm-mirror dm-crypt" MODULES_LVM="dm-mod dm-snapshot dm-mirror dm-bbr dm-bufio dm-crypt dm-delay dm-flakey dm-log dm-log-userspace dm-multipath dm-queue-length dm-raid dm-region-hash dm-round-robin dm-service-time dm-thin-pool dm-persistent-data libcrc32c dm-zero" MODULES_MDADM="dm-mod dm-snapshot dm-mirror dm-bbr dm-raid dm-crypt raid0 raid1 raid456 raid5 raid6 raid10 linear multipath" +MODULES_MULTIPATH="dm-mod dm-multipath dm-round-robin dm-rdac dm-queue-length dm-service-time" # Hardware (IDE/SCSI/SATA) MODULES_PATA="pata_mpiix pata_pdc2027x pata_radisys pata_sil680 pata_rz1000 pata_efar pata_cmd64x pata_hpt366 pata_hpt37x pata_hpt3x3 pata_hpt3x2n pata_optidma pata_it821x pata_artop pata_oldpiix pata_cypress pata_platform pata_serverworks pata_legacy pata_ns87410 pata_ns87415 pata_pcmcia pata_isapnp pata_it8213 pata_ali pata_amd pata_opti pata_atiixp pata_triflex pata_pdc202xx_old pata_sc1200 pata_qdi pata_netcell pata_sis pata_hpt3x2n pata_marvell pata_jmicron pata_via pata_cs5520 pata_cs5530 pata_cs5535 pata_sl82c105 libata" diff --git a/defaults/initrd.scripts b/defaults/initrd.scripts index 227fc99..53e1f97 100755 --- a/defaults/initrd.scripts +++ b/defaults/initrd.scripts @@ -616,6 +616,16 @@ startVolumes() { fi fi + if [ "${USE_MULTIPATH_NORMAL}" = '1' ] + then + good_msg "Scanning for multipath devices" + /sbin/multipath -v 0 + sleep 2 + good_msg "Activating multipath devices" + /sbin/dmsetup ls --target multipath --exec "/sbin/kpartx -a -v" + #for MULTIPATH_VOLUMES in /dev/mapper/*; do kpartx -a $MULTIPATH_VOLUMES; done + fi + if [ "${USE_DMRAID_NORMAL}" = '1' ] then if [ -e '/sbin/dmraid' ] diff --git a/defaults/linuxrc b/defaults/linuxrc index 54a57c6..48446ba 100755 --- a/defaults/linuxrc +++ b/defaults/linuxrc @@ -101,6 +101,10 @@ do DMRAID_OPTS=${x#*=} USE_DMRAID_NORMAL=1 ;; + domultipath) + good_msg "Booting with multipath activated." + USE_MULTIPATH_NORMAL=1 + ;; dozfs*) USE_ZFS=1 diff --git a/defaults/modules_load b/defaults/modules_load index 19521df..2643c0f 100644 --- a/defaults/modules_load +++ b/defaults/modules_load @@ -5,6 +5,7 @@ MODULES_ATARAID="ataraid pdcraid hptraid" MODULES_DMRAID="dm-mod dm-mirror" MODULES_LVM="dm-mod dm-snapshot dm-mirror dm-bbr dm-bufio dm-crypt dm-delay dm-flakey dm-log dm-log-userspace dm-multipath dm-queue-length dm-raid dm-region-hash dm-round-robin dm-service-time dm-thin-pool dm-zero" MODULES_MDADM="dm-mod dm-snapshot dm-mirror dm-bbr dm-raid dm-crypt raid0 raid1 raid456 raid5 raid6 raid10 linear multipath" +MODULES_MULTIPATH="dm-mod dm-multipath dm-round-robin dm-rdac dm-queue-length dm-service-time" # Hardware (IDE/SCSI/SATA) MODULES_PATA="pata_mpiix pata_pdc2027x pata_radisys pata_sil680 pata_rz1000 pata_efar pata_cmd64x pata_hpt366 pata_hpt37x pata_hpt3x3 pata_hpt3x2n pata_optidma pata_it821x pata_artop pata_oldpiix pata_cypress pata_platform pata_serverworks pata_legacy pata_ns87410 pata_ns87415 pata_pcmcia pata_isapnp pata_it8213 pata_ali pata_amd pata_opti pata_atiixp pata_triflex pata_pdc202xx_old pata_sc1200 pata_qdi pata_netcell pata_sis pata_hpt3x2n pata_marvell pata_jmicron pata_via pata_cs5520 pata_cs5530 pata_cs5535 pata_sl82c105 libata" diff --git a/doc/genkernel.8.txt b/doc/genkernel.8.txt index 6376e28..0377828 100644 --- a/doc/genkernel.8.txt +++ b/doc/genkernel.8.txt @@ -457,6 +457,9 @@ which the ramdisk scripts would recognize. Scan for bootable ZFS pools on bootup. Optionally force import if necessary. +*domultipath*:: + Activate Multipath on bootup + *doscsi*:: Activate SCSI devices on bootup, necessary when SCSI support is compiled as modules and you're using SCSI or SATA devices. diff --git a/gen_configkernel.sh b/gen_configkernel.sh index 6271ca0..b546db1 100755 --- a/gen_configkernel.sh +++ b/gen_configkernel.sh @@ -117,6 +117,14 @@ config_kernel() { sed -i ${KERNEL_OUTPUTDIR}/.config -e 's/#\? \?CONFIG_DM_MIRROR is.*/CONFIG_DM_MIRROR=m/g' fi + # Multipath + if isTrue ${CMD_MULTIPATH} + then + sed -i ${KERNEL_DIR}/.config -e 's/#\? \?CONFIG_BLK_DEV_DM is.*/CONFIG_BLK_DEV_DM=m/g' + sed -i ${KERNEL_DIR}/.config -e 's/#\? \?CONFIG_DM_MULTIPATH is.*/CONFIG_DM_MULTIPATH=m/g' + sed -i ${KERNEL_DIR}/.config -e 's/#\? \?CONFIG_DM_MULTIPATH_RDAC is.*/CONFIG_DM_MULTIPATH_RDAC=m/g' + fi + # Make sure dmraid modules are on if --dmraid if isTrue ${CMD_DMRAID} then diff --git a/gen_initramfs.sh b/gen_initramfs.sh index 55b9dd9..64e00e8 100755 --- a/gen_initramfs.sh +++ b/gen_initramfs.sh @@ -226,7 +226,10 @@ append_multipath(){ mkdir -p "${TEMP}"/initramfs-multipath-temp/{bin,etc,sbin,lib}/ # Copy files - copy_binaries "${TEMP}/initramfs-multipath-temp" /sbin/{multipath,kpartx,mpath_prio_*,devmap_name,dmsetup} /lib64/udev/scsi_id /bin/mountpoint + copy_binaries "${TEMP}/initramfs-multipath-temp" \ + /bin/mountpoint \ + /sbin/{multipath,kpartx,mpath_prio_*,devmap_name,dmsetup} \ + /{lib,lib64}/{udev/scsi_id,multipath/*so} if [ -x /sbin/multipath ] then -- 2.26.2