Bug#588452: softdep modules not included in initramfs when MODULES=dep is specified

2010-07-08 Thread Stephen Powell
Package: initramfs-tools
Version: 0.97

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.

-- 
  .''`. Stephen Powell
 : :'  :
 `. `'`
   `-



-- 
To UNSUBSCRIBE, email to debian-kernel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/922649436.38679.1278600800110.javamail.r...@md01.wow.synacor.com



Bug#588452: softdep modules not included in initramfs when MODULES=dep is specified

2010-07-08 Thread Michael Prokop
* Stephen Powell zlinux...@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-


signature.asc
Description: Digital signature


Bug#588452: softdep modules not included in initramfs when MODULES=dep is specified

2010-07-08 Thread Stephen Powell
On Thu, 08 Jul 2010 12:03:39 -0400 (EDT), Michael Prokop wrote:
 
 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.

Output of the above command on my system:

   /lib/modules/2.6.32-custom5b-s390x/kernel/drivers/s390/block/dasd_mod.ko
   /lib/modules/2.6.32-custom5b-s390x/kernel/drivers/s390/block/dasd_eckd_mod.ko

In other words, it list only the module itself plus hard dependencies.

-- 
  .''`. Stephen Powell
 : :'  :
 `. `'`
   `-



-- 
To UNSUBSCRIBE, email to debian-kernel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/1294535410.43811.1278611163548.javamail.r...@md01.wow.synacor.com