--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: linux-image-2.6.20-1-686: SCSI disks initialised too late for mdadm
- From: "Simon A. Boggis" <s.a.boggis@qmul.ac.uk>
- Date: Fri, 04 May 2007 11:42:15 +0100
- Message-id: <20070504104215.8058.86031.reportbug@appleberry.qmul.ac.uk>
Package: linux-image-2.6.20-1-686
Version: 2.6.20-3
Severity: critical
Justification: breaks the whole system
Hi,
I've filed this bug under the this package since, although one could
argue that initramfs-tools has the problem, the difference appears to be
kernel version.
My machine is configured with an software raid 0 (mdadm) root
filesystem, composed of two SCSI drives.
If I run the stock debian etch linux-image-2.6.18-4-686
(2.6.18.dfsg.1-12etch1) kernel, everything works as expected. If I
attempt to boot the linux-image-2.6.20-1-686 (2.6.20-3) kernel from
unstable, my system hangs on boot.
Examining captures of the boot process shows that on 2.6.18-4-686 we
see (excuse slight hiccups in formatting - imperfect capture from
serial over LAN console):
Begin: Running /scripts/init-premount ...
ACPI: Processor [usbcore: registered new driver usbfs
usbcore: registered new driver hub
SCSI subsystem initiale1000: 0000:04:04.0: e1000_probe:
(PCI-X:100MHz:64-bit) 00:04:23:c5:10:d6
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; overrid 1999-2005
LSI Logic Corporation
USB Universal Host Controller Interface driver v3.0
e1000: ett 0000:00:1d.0[A] -> GSI 16 (level, low) -> IRQ 169
uhci_hcd 0000:00:1d.0: UHCI Host Controllerhdd: Slimtype COMBO
SOSC-2483K, ATAPI CD/DVD-ROM drive
scsi0 : ioc0: LSI53C1030, FwRev=01032700 Vendor: SEAGATE Model:
ST336754LC Rev: 0005
Type: Direct-Access ANSI SCSI revision:
03
target0:0:0: Beginning Domain Validation
target0:0:0: Ending Domain Validation
target0:0:0: FAST-160 WIDE SCSI 320.0 MB/s DT IU QAS RTI WRFLOW PCOMP
(6.25 ns, offset 63)
Vendor: SEAGATE Model: ST336754LC Rev: 0005
Type: Direct-Access ANSI SCSI revision:
03
target0:0:1: Beginning Domain Validation
target0:0:1: Ending Domain Validation
target0:0:1: FAST-160 WIDE SCSI 320.0 MB/s DT IU QAS RTI WRFLOW PCOMP
(6.25 ns, offset 63)
Vendor: SEAGATE Model: ST336807LC Rev: 0C01
Type: Direct-Access GW"9 ANSI SCSI
revision: 03
target0:0:3: Beginning Domain Validation
target0:0:3: Ending DomaiFLOW PCOMP (6.25 ns, offset 63)
Vendor: ESG-SHV Model: SCA HSBP M29 Rev: 1.06
Type: Processor ANSI SCSI revision:
02
target0:0:6: Beginning Domain Validation
target0:0:6: Ending Domain Validation
target0:0:6: asynchronous
ACPI: PCI Interrupt 0000:02:05.1[B] -> GSI 25 (level, low) -> IRQ 66
mptbase: Initiating ioc1 bringup
ioc1: 53C1030: Capabilities={Initiator}
scsi1 : ioc1: LSI53C1030, FwRev=01032700h, Ports=1, MaxQ=222, IRQ=66
SCSI device sda: 71687372 512-byte hdwr sectors (36704 MB)
hdd: ATAPI<5>sda: Write Protect is off
SCSI device sda: drive cache: write back w/ FUA
SCSI device sda: 71687372 512-byte hdwr sectors (36704 MB)
sda: Write Protect is off
SCSI device sda: drive cache: write back w/ FUA
sda: sda1 sda2 sda3 < sda5 sda6 sda7 >
24X<5>sd 0:0:0:0: Attached scsi disk sda
SCSI device sdb: 71687372 512-byte hdwr sectors (36704 MB)
sdb: Write Protect is off
SCSI device sdb: drive cache: write back w/ FUA
SCSI device sdb: 71687372 512-byte hdwr sectors (36704 MB)
sdb: Write Protect is off
SCSI device sdb: drive c Write Protect is off
SCSI device sdc: drive cache: write back w/ FUA
SCSI device sdc: 7168737vision: 3.20
sdc: sdc4
sdc4: <bsd:bad subpartition - ignored
bad subpartition - ignored
bac
Done.
Begin: Mounting root file system... ...
[BOOT CONTINUES]
whereas on linux-image-2.6.20-1-686 we see:
Begin: Running /scripts/init-premount ...
ACPIling states)
ACPI: Processor [CPU2] (supports 8 throttling states)
usbcore: registered new intporation.
ACPI: PCI Interrupt 0000:04:04.0[A] -> GSI 54 (level, low) -> IRQ 17
ICH5: IDE contrbe irqs later
ide0: BM-DMA at 0xfc00-0xfc07, BIOS settings: hda:pio, hdb:pio
ide1: BM-ystem initialized
USB Universal Host Controller Interface driver v3.0
e1000: eth0: e1000_probee COMBO SOSC-2483K, ATAPI CD/DVD-ROM drive
ide1 at 0x170-0x177,0x376 on irq 15
ACPI: PCI Interscsi0 : ioc0: LSI53C1030, FwRev=01032700h, Ports=1,
MaxQ=222, IRQ=25
ACPI: PCI Interrupt 0000:02:05.1[B] -> GSI 25 (level, low) -> IRQ 27
mptbase: Initiating ioc1 bringup
ioc1: 53C1030: Capabilities={Initiator}
scsi 0:0:0:0: Direct-Access SEAGATE ST336754LC 0005 PQ: 0 ANSI:
3
target0:0:0: Beginning Domain Validation
scsi1 : ioc1: LSI53C1030, FwRev=01032700h, Ports=1, MaxQ=222, IRQ=27
target0:0:0: Ending Domain Validation
target0:0:0: FAST-160 WIDE SCSI 320.0 MB/s DT IU QAS RTI WRFLOW PCOMP
(6.25 ns, offset 63)
scsi 0:0:1:0: Direct-Access SEAGATE ST336754LC 0005 PQ: 0 ANSI:
3
target0:0:1: Beginning Domain Validation
target0:0:1: Ending Domain Validation
target0:0:1: FAST-160 WIDE SCSI 320.0 MB/s DT IU QAS RTI WRFLOW PCOMP
(6.25 ns, offset 63)
hdd: ATAPI 24X DVD-ROM CD-R/RW drive, 2048kB Cache, UDMA(33)
Uniform CD-ROM driver Revision: 3.20
Done.
Begin: Mounting root file system... ...
Begin: Running /scripts/local-top ...
Begin: Loading Mmd: raid1 personality registered for level 1
D modules ...
Success: loaded module raid1.
Done.
Begin: Assembling all MD arrays ...
mdadm: No devices listed in conf file were found.
Failure: failed to assemble all arrays.
Done.
Done.
Begin: Waiting for root file system... ...
scsi 0:0:3:0: Direct-Access SEAGATE ST336807LC 0C01 PQ: 0 ANSI:
3
target0:0:3: Beginning Domain Validation
target0:0:3: Ending Domain Validation
target0:0:3: FAST-160 WIDE SCSI 320.0 MB/s DT IU QAS RTI WRFLOW PCOMP
(6.25 ns, offset 63)
scsi 0:0:6:0: Processor ESG-SHV SCA HSBP M29 1.06 PQ: 0 ANSI:
2
target0:0:6: Beginning Domain Validation
target0:0:6: Ending Domain Validation
target0:0:6: asynchronous
SCSI device sda: 71687372 512-byte hdwr sectors (36704 MB)
sda: Write Protect is off
SCSI device sda: write cache: enabled, read cache: enabled, supports DPO
and FUA
SCSI device sda: 71687372 512-byte hdwr sectors (36704 MB)
sda: Write Protect is off
SCSI device sda: write cache: enabled, read cache: enabled, supports DPO
and FUA
sda: sda1 sda2 sda3 < sda5 sda6 sda7 >
sd 0:0:0:0: Attached scsi disk sda
SCSI device sdb: 71687372 512-byte hdwr sectors (36704 MB)
sdb: Write Protect is off
SCSI device sdb: write cache: enabled, read cache: enabled, supports DPO
and FUA
SCSI device is off
SCSI device sdb: write cache: enabled, read cache: enabled, supports DPO
and FUA
sdb: 2 512-byte hdwr sectors (36704 MB)
sdc: Write Protect is off
SCSI device sdc: write cache: enasdc: write cache: enabled, read cache:
enabled, supports DPO and FUA
sdc: sdc4
sdc4: <bsd:bad
>
sd 0:0:3:0: Attached scsi disk sdc
[SYSTEM HANGS HERE]
In other words, for 2.6.20 the discovery of the SCSI disks seems to
occur after mdadm has been started, and too late to be of any use -
lacking a root device, the system hangs.
My suspicion is that adding a suitable sleep into the initrd scripts
will "fix" the problem, but this doesn't seem like the right thing to
do.
As far as I am aware I have no exceptionally long delays in device
discovery on the machine, and everything works swimmingly with earlier
kernels.
Best wishes,
Simon
-- Package-specific info:
-- System Information:
Debian Release: 4.0
APT prefers stable
APT policy: (990, 'stable'), (500, 'unstable')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-4-686
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Versions of packages linux-image-2.6.20-1-686 depends on:
ii initramfs-tools [linux-initra 0.85g tools for generating an initramfs
ii module-init-tools 3.3-pre4-2 tools for managing Linux kernel mo
Versions of packages linux-image-2.6.20-1-686 recommends:
ii libc6-i686 2.3.6.ds1-13 GNU C Library: Shared libraries [i
-- debconf information:
shared/kernel-image/really-run-bootloader: true
linux-image-2.6.20-1-686/postinst/depmod-error-initrd-2.6.20-1-686: false
linux-image-2.6.20-1-686/postinst/old-initrd-link-2.6.20-1-686: true
linux-image-2.6.20-1-686/preinst/already-running-this-2.6.20-1-686:
linux-image-2.6.20-1-686/preinst/failed-to-move-modules-2.6.20-1-686:
linux-image-2.6.20-1-686/preinst/overwriting-modules-2.6.20-1-686: true
linux-image-2.6.20-1-686/postinst/create-kimage-link-2.6.20-1-686: true
linux-image-2.6.20-1-686/preinst/abort-overwrite-2.6.20-1-686:
linux-image-2.6.20-1-686/prerm/removing-running-kernel-2.6.20-1-686: true
linux-image-2.6.20-1-686/preinst/lilo-has-ramdisk:
linux-image-2.6.20-1-686/postinst/bootloader-test-error-2.6.20-1-686:
linux-image-2.6.20-1-686/preinst/bootloader-initrd-2.6.20-1-686: true
linux-image-2.6.20-1-686/postinst/bootloader-error-2.6.20-1-686:
linux-image-2.6.20-1-686/preinst/elilo-initrd-2.6.20-1-686: true
linux-image-2.6.20-1-686/preinst/initrd-2.6.20-1-686:
linux-image-2.6.20-1-686/preinst/lilo-initrd-2.6.20-1-686: true
linux-image-2.6.20-1-686/postinst/kimage-is-a-directory:
linux-image-2.6.20-1-686/postinst/depmod-error-2.6.20-1-686: false
linux-image-2.6.20-1-686/postinst/old-dir-initrd-link-2.6.20-1-686: true
linux-image-2.6.20-1-686/postinst/old-system-map-link-2.6.20-1-686: true
linux-image-2.6.20-1-686/prerm/would-invalidate-boot-loader-2.6.20-1-686: true
linux-image-2.6.20-1-686/preinst/abort-install-2.6.20-1-686:
--- End Message ---