* Stephen Powell <zlinuxman@wowway.com> [Thu Jul 08, 2010 at 10:53:20AM -0400]: > "softdep" modules are not included in the initial RAM file system > when MODULES=dep is specified. Here's an example from the s390 > architecture: > /etc/modprobe.d/dasd.conf: > options dasd_mod dasd=0.0.0200(diag),0.0.0201,0.0.0202-0.0.0203(diag) > softdep dasd_eckd_mod pre: dasd_diag_mod > softdep dasd_fba_mod pre: dasd_diag_mod > (/etc/modprobe.conf does *not* exist) > /etc/initramfs-tools/conf.d/driver-policy: > MODULES=dep > /etc/initramfs-tools/modules: > (dasd_diag_mod is *not* listed) > dasd_eckd_mod is included in the initial RAM file system. I assume that > that is due to matching on the alias "ccw:t3990m*dt3390dm*". dasd_mod > is also included in the initial RAM file system. I presume that that > is due to the fact that dasd_mod is a hard dependency of dasd_eckd_mod. > But dasd_diag_mod is *not* included in the initial RAM file system, > even though it is listed as a soft dependency of dasd_eckd_mod, which > has already been selected for inclusion. > On the system above, this prevents the system from booting, as the > devices marked for use with the diag driver, including the root file > system in this case, cannot be brought online. Therefore, the permanent > root file system cannot be mounted. > I am able to circumvent the problem by explicitly listing dasd_diag_mod > in /etc/initramfs-tools/modules, but this should not be necessary. For MODULES=dep we use modprobe as interface to detect dependencies. To display the dependencies of dasd_eckd_mod you could run: modprobe --set-version="$(uname -r)" --ignore-install --quiet --show-depends dasd_eckd_mod | awk '/^insmod/ { print $2 }' which will not list dasd_diag_mod as a dependency AFAICS. Quoting: ,---- [ modprobe.conf(5) ] | COMPATIBILITY | | A future version of module-init-tools will come with a strong | warning to avoid use of the install as explained above. This | will happen once support for soft dependencies in the | kernel is complete. That support will complement the | existing softdep support within this utility by providing | such dependencies directly within the modules. `---- I don't want to include any special support for softdep just inside initramfs-tools, instead I'd like to get an interface from module-init-tools's modprobe that we could use for dependency resolution. Any objections against reassigning this bugreport to module-init-tools (maks?)? regards, -mika-
Attachment:
signature.asc
Description: Digital signature