From: Harald Hoyer Date: Tue, 21 Jul 2009 15:37:41 +0000 (+0200) Subject: use kernel module directory specified on command line in modules also X-Git-Tag: 0.6~6 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=441d31b9273ca5fcaa0a007f1856f3c01905b977;p=thirdparty%2Fdracut.git use kernel module directory specified on command line in modules also --- diff --git a/dracut-functions b/dracut-functions index dc7021aa1..0aa3025ec 100755 --- a/dracut-functions +++ b/dracut-functions @@ -264,12 +264,12 @@ check_modules() { done } +srcmods="/lib/modules/$kernel/" +[ -n "$drivers_dir" ] && srcmods="$drivers_dir" + # install kernel modules, and handle installing all their dependencies as well. instmods() { local mod mpargs modpath modname cmd - local srcmods - srcmods="/lib/modules/$kernel/" - [ -n "$drivers_dir" ] && srcmods="$drivers_dir" while (($# > 0)); do mod=${1%.ko} case $mod in diff --git a/modules.d/40network/install b/modules.d/40network/install index 729f1f144..79fbf57c5 100755 --- a/modules.d/40network/install +++ b/modules.d/40network/install @@ -1,7 +1,7 @@ #!/bin/bash dracut_install ip dhclient hostname brctl # Include wired net drivers, excluding wireless -for modname in $(find "/lib/modules/$kernel/kernel/drivers" -name '*.ko'); do +for modname in $(find "$srcmods/kernel/drivers" -name '*.ko'); do if nm -uPA $modname | grep -q eth_type_trans; then if echo "$modname" | grep -q wireless; then continue diff --git a/modules.d/50plymouth/install b/modules.d/50plymouth/install index f87f8e134..89a0a0931 100755 --- a/modules.d/50plymouth/install +++ b/modules.d/50plymouth/install @@ -6,6 +6,6 @@ inst_hook pre-trigger 10 "$moddir"/plymouth-pretrigger.sh inst_hook emergency 50 "$moddir"/plymouth-emergency.sh inst "$moddir"/cryptroot-ask.sh /sbin/cryptroot-ask # Include KMS capable drm drivers -for modname in $(find "/lib/modules/$kernel/kernel/drivers/gpu/drm" -name '*.ko'); do +for modname in $(find "$srcmods/kernel/drivers/gpu/drm" -name '*.ko'); do nm -uPA $modname | grep -q drm_crtc_init && instmods $modname done diff --git a/modules.d/90kernel-modules/install b/modules.d/90kernel-modules/install index 6e6c61eae..e6db3e16b 100755 --- a/modules.d/90kernel-modules/install +++ b/modules.d/90kernel-modules/install @@ -2,7 +2,7 @@ if [ -z "$drivers" ]; then drivers="sd_mod =fs" # Include block controller drivers - for modname in $(find "/lib/modules/$kernel/kernel/drivers" -name '*.ko'); do + for modname in $(find "$srcmods/kernel/drivers" -name '*.ko'); do if nm -uPA $modname | egrep -q 'ata_scsi_ioctl|scsi_add_host|blk_init_queue|register_mtd_blktrans|scsi_esp_register'; then drivers="${drivers} $modname" fi