From: Warren Togami Date: Tue, 30 Jun 2009 18:36:57 +0000 (-0400) Subject: Detect block drivers during dracut since we cannot rely on the modules.block list. X-Git-Tag: 0.2~17 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=8af0a48521d85256287f4f384398a46638f8b046;p=thirdparty%2Fdracut.git Detect block drivers during dracut since we cannot rely on the modules.block list. --- diff --git a/modules.d/90kernel-modules/install b/modules.d/90kernel-modules/install index d1c430e7b..eec3ae729 100755 --- a/modules.d/90kernel-modules/install +++ b/modules.d/90kernel-modules/install @@ -1,7 +1,14 @@ #!/bin/bash -# FIXME: hard-coded module list of doom. -[[ $drivers ]] || drivers="=block sd_mod =fs" -instmods $drivers +if [ -z $drivers ]; then + drivers="sd_mod =fs" + instmods $drivers + # Include block controller drivers + for modname in $(find "/lib/modules/$kernel/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 + instmods $modname + fi + done +fi [ -f /etc/modprobe.conf ] && dracut_install /etc/modprobe.conf dracut_install $(find /etc/modprobe.d/ -type f -name '*.conf')