[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#336392: Acknowledgement (linux-image-2.6.14-1-686: 2.6.14 doesn't boot after dist-upgrade from 2.6.12)



On Fri, Nov 11, 2005 at 08:16:43AM +0100, Olaf van der Spek wrote:
> Erik van Konijnenburg wrote:
> > On Thu, Nov 10, 2005 at 11:25:43PM +0100, Olaf van der Spek wrote:
> >>yaird: goal: mountdir, / (/usr/lib/yaird/conf/Default.cfg:143)
> >>yaird: action: insmod, /lib/modules/2.6.14-1-686/kernel/drivers/scsi/scsi_mod.ko {optionList=-- }
> >>yaird: action: insmod, /lib/modules/2.6.14-1-686/kernel/drivers/scsi/sd_mod.ko {optionList=-- }
> >>yaird: hardware: completed platform/host0/target0:0:0/0:0:0:0
> >>yaird: action: mkbdev, /dev/sda {sysname=sda } {optionList=-- }
> > 
> > The two modules are clear: Sda is a blockdevice on SCSI, so we mknod /dev/sda and
> > we load the SCSI disk driver, which requires scsi_mod.
> > 
> > But the SCSI host0 claims it's managed directly by the platform, without any controller
> 
> Is that a hardware or software (driver) issue?
> If it's a driver issue, shouldn't this report be copied/moved to the 
> kernel package?

It's a software issue: a driver that does not yet fully take advantage of
the sysfs infrastructure.  You may be able to guess which driver by looking
at lsmod under the old kernel.

The author of the driver probably knows already that sysfs is still on the todo
list, so it's not like refiling this issue would provide new info.
Note that making a driver make use of sysfs is a structural change,
not something the author can handle with a quick bugfix.

> > to manage the bus, so yaird sees no reason to load any SCSI/PCI modules.
> > 
> > Solution: if the SCSI bus is managed by a controller that needs a driver,
> > make sure the driver that manages the controller makes itself visible in /sys.
> > 
> > Workaround: in /etc/yaird/Default.cfg, before MOUNTDIR, use the keyword 'MODULE'
> > to load whatever modules your system needs.
> > 
> > I see no manageable way to detect and repair this kind of misleading /sys directory
> > automatically in a standard yaird distribution.
> 
> I'm wondering, how did it work before?

In 2.6.12 you may have used initrd-tools.  If that's so, the command 'file /boot/initrd*'
will show  'Linux Compressed ROM File System'.  That tool took a bit of a shotgun approach:
put a lot on the image, and hope something works; yaird is more conservative in what goes
on the image.  Neither approach always produces a booting machine.

Note that initrd-tools cannot be used with kernel 2.6.13 or later: the initrd approach
uses devfs, a feature that has been removed from newer kernels.

If you have room to experiment with explicitly putting the missing module on the image,
please do; I would like to include the resulting knowledge in the readme.

Regards,
Erik




Reply to: