File 0532-List-drivers-rather-than-looking-for-reverse-depende.patch of Package dracut.15766
From a233d68d230de2e6cd53c557999ad7cb3184cc46 Mon Sep 17 00:00:00 2001
From: Daniel Molkentin <dmolkentin@suse.com>
Date: Mon, 7 Aug 2017 14:23:20 +0200
Subject: [PATCH] List drivers rather than looking for reverse dependencies of
block device-providing drivers
Adding all reverse dependencies for a driver shot over the top too often
(e.g. boo#1037344).
This reverts "90kernel-modules: also add block device driver reverse dependencies"
(commit 8a679916e597a2c589334c5aeaef8996b18debab)
Reference: boo#1037344
Reference: bsc#1034597
---
modules.d/90kernel-modules/module-setup.sh | 28 +++++-----------------------
1 file changed, 5 insertions(+), 23 deletions(-)
diff --git a/modules.d/90kernel-modules/module-setup.sh b/modules.d/90kernel-modules/module-setup.sh
index 77b6bcae..e1880725 100755
--- a/modules.d/90kernel-modules/module-setup.sh
+++ b/modules.d/90kernel-modules/module-setup.sh
@@ -3,28 +3,6 @@
# called by dracut
installkernel() {
if [[ -z $drivers ]]; then
- # modules with symbols might have abstractions that depend on them, so let's add those
- add_rev_deps() {
- local _module
- local _line
- [[ -f "$srcmods/modules.dep" ]] || return 0
- while read _module; do
- local _mod
- local _deps
- _module=${_module##$srcmods/}
- printf "%s\n" "$_module"
- egrep ".*:.*$_module.*" $srcmods/modules.dep | (
- local _OLDIFS=$IFS
- IFS=:
- while read _mod _deps; do
- printf "%s\n" "$srcmods/$_mod"
- done
- IFS=$_OLDIFS
- )
- done | sort -u
- return 0
- }
-
block_module_filter() {
local _blockfuncs='ahci_platform_get_resources|ata_scsi_ioctl|scsi_add_host|blk_cleanup_queue|register_mtd_blktrans|scsi_esp_register|register_virtio_device|usb_stor_disconnect|mmc_add_host|sdhci_add_host'
# subfunctions inherit following FDs
@@ -90,7 +68,11 @@ installkernel() {
instmods virtio virtio_blk virtio_ring virtio_pci virtio_scsi \
"=drivers/pcmcia" =ide "=drivers/usb/storage"
- find_kernel_modules | block_module_filter | add_rev_deps | instmods
+ find_kernel_modules | block_module_filter | instmods
+
+ # modules that will fail block_module_filter because their implementation
+ # is spread over multiple modules (bsc#1034597)
+ instmods hisi_sas_v1_hw hisi_sas_v2_hw # symbols in dep hisi_sas_main
# if not on hostonly mode, install all known filesystems,
# if the required list is not set via the filesystems variable
--
2.12.3