Op Wed 3 Feb 2010 om 11:08:44 +0100 schreef Joost van Baal:
> Op Wed 3 Feb 2010 om 09:52:57 +0000 schreef Jurij Smakov:
> > On Wed, Feb 03, 2010 at 10:48:47PM +0100, Joost van Baal wrote:
> > > Op Wed 3 Feb 2010 om 10:22:15 +0100 schreef Joost van Baal:
> > > > Op Wed 3 Feb 2010 om 07:36:50 +0000 schreef Jurij Smakov:
> > > > > On Wed, Feb 03, 2010 at 06:23:03PM +0100, Joost van Baal wrote:
> > > > > >
> > > > > > I'm installing Debian lenny on a SunBlade 2000 sparc for demo-ing at the FOSDEM
> > > > > > conference debian booth. ql2200_fw.bin is not found by my kernel, while it
> > > > > > _is_ included in the initrd. Booting the system from a Debian installer CD,
> > > > > > and supplying ql2200_fw.bin via an USB-stick works just fine: I've installed
> > > > > > the complete OS on the system's disks this way.
> > > > > >
> > > > > > The kernel on disk is vmlinuz-2.6.26-2-sparc64 from
> > > > > > linux-image-2.6.26-2-sparc64 package, version 2.6.26-21.
> > > > > > /usr/sbin/update-initramfs is from initramfs-tools (0.92o).
> > > > > >
> > > > > > Any clues on how to get this system to find it's disks is very much
> > > > > > appreciated. Unfortunately little time is left for me: the conference is gonna
> > > > > > happen in 3 days, while the system is scheduled to get shipped there even
> > > > > > earlier....
> > > > >
> > > > > Can you check that the firmware file actually makes it to the initrd?
> > > > > It's just a gzipped cpio archive, you can extract it like that (in a
> > > > > temp directory):
> > > > >
> > > > > cp /boot/initrd-<version> initrd.gz
> > > > > gzip -d initrd.gz
> > > > > cpio -i < initrd
> > > >
> > > > Yes, it is included in the initrd:
> > > >
> > > > ~ # mount /dev/sdb1 /mnt
> > > > ~ # for i in proc sys dev dev/pts; do mount --bind /$i /mnt/$i ;done
> > > > ~ # chroot /mnt
> > > > sh-3.2# mount /usr
> > > > sh-3.2# mount /tmp
> > > > sh-3.2# cd /tmp
> > > > sh-3.2# zcat /boot/initrd.img | cpio -i
> > > > 18477 blocks
> > > > sh-3.2# ls -l lib/firmware/ql2*
> > > > -rw-r--r-- 1 root root 76802 Feb 3 21:19 lib/firmware/ql2100_fw.bin
> > > > -rw-r--r-- 1 root root 84566 Feb 3 21:19 lib/firmware/ql2200_fw.bin <- the right one
> > > > -rw-r--r-- 1 root root 123170 Feb 3 21:19 lib/firmware/ql2300_fw.bin
> > > > -rw-r--r-- 1 root root 132978 Feb 3 21:19 lib/firmware/ql2322_fw.bin
> > > > -rw-r--r-- 1 root root 227884 Feb 3 21:19 lib/firmware/ql2400_fw.bin
> > > > -rw-r--r-- 1 root root 198044 Feb 3 21:19 lib/firmware/ql2500_fw.bin
> > > >
> > > > I'll reboot once more and will record the exact kernel error messages.
> > > > Perhaps that'll help...
> > >
> > > Some of the boot messages:
> > >
> > > [...] QLogic Fiber Channel HBA Driver: 8.02.01-k4
> > > [...] qla2xxx 0001:00:04.0: Found an ISP2200, irq 22, iobase 0x00....
> > > [...] qla2xxx 0001:00:04.0: Configuring PCI space...
> > > [...] qla2xxx 0001:00:04.0: Configure NVRAM parameters...
> > > [...] qla2xxx 0001:00:04.0: Inconsistent NVRAM detected: checksum=0x0 id=<4>qla2xxx 0001:00:04.0: Falling back to functioning (yet invalid -- WWPN) defaults.
> > > [...] qla2xxx 0001:00:04.0: Verifying loaded RISC code...
> > > [...] firmware: requesting ql2200_fw.bin
> > > [...] qla2xxx 0001:00:04.0: Firmware image unavailable.
> > > [...] qla2xxx 0001:00:04.0: Firmware images can be retreived from: ftp://ftp.qlogic.com/outgoing/linux/firmware/.
> > > Failed to initialize adapter
> > > done.
> > > Begin: Running /scripts/init-premount ... done.
> > > ....
> > > Waiting for root filesystem ... done.
> > > Gave up waiting for root device. Common problems:
> > > ...
> > > ALERT! /dev/sdb1 does not exist. Dropping to a shell!
> >
> > Do you see the firmware on the initrd after it drops you into the
> > initrd shell?
>
> Can't check now: just found out my USB keyboard is not working in this shell.
> I'll reboot tomorrow with an old school VT terminal, or try to rebuild the
> initrd with usb-support.
Yes, I see it:
(initramfs) ls lib/firmware
ql2100_fw.bin ql2300_fw.bin ql2400_fw.bin
ql2200_fw.bin ql2322_fw.bin ql2500_fw.bin
> > If it's there, what happens if you remove the module and
> > then reload it:
> >
> > modprobe -r qla2xxx
> > modprobe qla2xxx
This works!
[...] sda: sda1 sda2 sda3 sda4
...
[...] sdb: sdb1 sdb2
However, after disks have been detected, I get:
(initramfs) exit
Begin: Running scripts/local-premount ... done
mount: mounting /dev/sdb1 on /root failed: No such device
(It seems disks have been renamed from sdb, sdc to sda, sdb: An extra USB-stick
was present during initial installation.)
Hrm, should I hack some file in /etc/initramfs-tools/ now? More hints are
appreciated.
Thanks again, Bye,
Joost
--
irc:joostvb@{OFTC,freenode} ∙ http://mdcc.cx/ ∙ http://ad1810.com/
> > > Perhaps ql2200_fw.bin should not be installed as /lib/firmware/ql2200_fw.bin in
> > > the initrd, but at some other location? (I'll inspect the installer's initrd
> > > tomorrow; first get some sleep now...)
> > >
> > > Or maybe some needed modules are missing from the initrd? (While installing
> > > I've chosen "custom", not "just include all modules".)
> > >
> > > Or maybe the "Inconsistent NVRAM" is causing the troubles?
>
> Or flaky hardware?
>
> (FWIW: the initrd includes these modules:
>
> ./lib/modules/2.6.26-2-sparc64/kernel/fs/jbd/jbd.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/fs/ext3/ext3.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/scsi/scsi_mod.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/scsi/scsi_tgt.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/scsi/scsi_transport_fc.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/scsi/qla2xxx/qla2xxx.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/scsi/sd_mod.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/base/firmware_class.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/ide/ide-disk.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/ide/ide-cd_mod.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/cdrom/cdrom.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/net/sunvnet.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/block/sunvdc.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/md/dm-mod.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/md/dm-snapshot.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/md/dm-log.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/md/dm-mirror.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/md/md-mod.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/md/linear.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/md/multipath.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/md/raid0.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/md/raid1.ko
>
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/md/raid456.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/drivers/md/raid10.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/crypto/xor.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/crypto/async_tx/async_tx.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/crypto/async_tx/async_memcpy.ko
> ./lib/modules/2.6.26-2-sparc64/kernel/crypto/async_tx/async_xor.ko
>
> )
Attachment:
signature.asc
Description: Digital signature