Bug 12470 (rootfs_nomount_sata)

Summary: The root file system fails to mount on 2.6.27 or 2.6.28 using a SATA drive. 2.6.24 is working.
Product: IO/Storage Reporter: Morgan (maclover201)
Component: Serial ATAAssignee: Tejun Heo (tj)
Status: CLOSED OBSOLETE    
Severity: blocking CC: alan
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.27.10 Subsystem:
Regression: Yes Bisected commit-id:
Attachments: This is the dmesg output from kernel version 2.6.27.10.
Dmesg output - 2.6.24-21_generic bootup
Dmesg output - 2.6.27.10 timeout
Dmesg output - 2.6.27.10 bootup
Dmesg output - 2.6.28 timeout
Dmesg output - 2.6.27.10 timeout with noacpi
Dmesg output - 2.6.27.11 boot with noacpi
Dmesg output - 2.6.28 timeout with noacpi
Dmesg output- 2.6.28.4 boot with all_generic_ide

Description Morgan 2009-01-17 11:25:00 UTC
Latest working kernel version: 2.6.24

Earliest failing kernel version: 2.6.27, although I've heard from other users that the bug appeared in 2.6.26.

Distribution: Ubuntu 8.10

Hardware Environment:

CPU...
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 15
model           : 2
model name      : Intel(R) Pentium(R) 4 CPU 2.40GHz
stepping        : 7
cpu MHz         : 2393.989
cache size      : 512 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 2
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe up pebs bts cid
bogomips        : 4787.97
clflush size    : 64
Memory:
00000000-0009fbff : System RAM
0009fc00-0009ffff : reserved
000a0000-000bffff : Video RAM area
000c0000-000cf7ff : Video ROM
000d0000-000d27ff : Adapter ROM
000f0000-000fffff : reserved
  000f0000-000fffff : System ROM
00100000-1fffbfff : System RAM
  00100000-003f0489 : Kernel code
  003f048a-0054378f : Kernel data
  005bd000-0066f473 : Kernel bss
1fffc000-1fffefff : ACPI Tables
1ffff000-1fffffff : ACPI Non-volatile Storage
e3000000-e3000fff : 0000:00:13.0
  e3000000-e3000fff : firewire_ohci
e3800000-e38000ff : 0000:00:12.0
  e3800000-e38000ff : 8139too
e4000000-e400ffff : 0000:00:0f.0
e4800000-e4807fff : 0000:00:0e.0
  e4800000-e4807fff : 0000:00:0e.0
e5000000-e5000fff : 0000:00:03.3
  e5000000-e5000fff : ehci_hcd
e5800000-e5800fff : 0000:00:03.2
  e5800000-e5800fff : ohci_hcd
e6000000-e6000fff : 0000:00:03.1
  e6000000-e6000fff : ohci_hcd
e6800000-e6800fff : 0000:00:03.0
  e6800000-e6800fff : ohci_hcd
e7000000-e7ffffff : PCI Bus 0000:01
  e7000000-e7ffffff : 0000:01:00.0
    e7000000-e7ffffff : nvidia
e8000000-ebffffff : 0000:00:00.0
ef700000-febfffff : PCI Bus 0000:01
  ef7e0000-ef7fffff : 0000:01:00.0
  ef800000-ef87ffff : 0000:01:00.0
  f0000000-f7ffffff : 0000:01:00.0
fec00000-fec00fff : reserved
fee00000-fee00fff : Local APIC
  fee00000-fee00fff : reserved
ffee0000-ffefffff : pnp 00:02
ffff0000-ffffffff : reserved

Software Environment...
Linux server 2.6.27.10 #1 SMP Wed Dec 24 17:52:21 MST 2008 i686 GNU/Linux

Gnu C                  4.3.2
Gnu make               3.81
binutils               2.18.93.20081009
util-linux             2.14
mount                  support
module-init-tools      3.3-pre11
e2fsprogs              1.41.3
reiserfsprogs          3.6.19
pcmciautils            014
PPP                    2.4.4
Linux C Library        2.8.90
Dynamic linker (ldd)   2.8.90
Procps                 3.2.7
Net-tools              1.60
Kbd                    1.14.1
Sh-utils               6.10
udev                   124
wireless-tools         29
Modules Loaded         nls_iso8859_1 nls_cp437 vfat fat rfcomm bridge stp bnep
sco l2cap bluetooth ppdev speedstep_lib cpufreq_powersave cpufreq_stats
cpufreq_conservative cpufreq_ondemand freq_table cpufreq_userspace wmi video
output container sbs sbshc pci_slot battery ipv6 iptable_filter ip_tables
x_tables ac sbp2 lp snd_intel8x0 snd_ac97_codec ac97_bus snd_pcm_oss
snd_mixer_oss pcspkr evdev psmouse usb_storage snd_pcm serio_raw libusual
snd_seq_dummy nvidia snd_seq_oss snd_seq_midi snd_rawmidi parport_pc parport
snd_seq_midi_event rt61pci rt2x00pci rt2x00lib snd_seq rfkill snd_timer
snd_seq_device led_class i2c_sis96x button sis_agp agpgart eeprom_93cx6 snd
soundcore shpchp pci_hotplug i2c_core snd_page_alloc ext3 jbd mbcache 8139cp
sd_mod crc_t10dif sg ohci1394 ieee1394 ohci_hcd ehci_hcd 8139too mii usbcore
pata_sis pata_acpi ata_generic thermal processor fan fuse

Other pertinent information...
Hard Drive: Seagate ST380023A 80GB (scsi0)
IDE Interface: Silicon Integrated Systems [SiS] 5513 [IDE] (prog-if 80 [Master])
 --- Subsystem: Sony Corporation Device 8133


Problem Description: The root file system fails to mount on any 2.6.27 kernel using a SATA drive. 2.6.24 is working. To get around this issue, you must use the all_generic_ide or ata_piix boot options in conjunction with rootdelay=120. rootdelay=240 works too if you don't want to use one of the aforementioned boot options.

Steps to reproduce: Install a 2.6.27 kernel on a computer with the same hardware as me and reboot.
Comment 1 Morgan 2009-01-17 11:27:35 UTC
Created attachment 19865 [details]
This is the dmesg output from kernel version 2.6.27.10.

This is the most important part of the dmesg output.

[    7.500877] ohci_hcd: 2006 August 04 USB 1.1 'Open' Host Controller (OHCI) Driver
[    7.500888] bus: 'pci': add driver ohci_hcd
[    7.507268] bus: 'pci': add driver ohci1394
[    7.524541] ata1.00: ATA-6: ST380023A, 3.31, max UDMA/100
[    7.524547] ata1.00: 156301488 sectors, multi 16: LBA 
[    7.540518] ata1.00: configured for UDMA/100
[   12.736015] ata2: link is slow to respond, please be patient (ready=0)
[   17.552015] ata2: SRST failed (errno=-16)
[   22.748015] ata2: link is slow to respond, please be patient (ready=0)
[   27.564015] ata2: SRST failed (errno=-16)
[   32.760017] ata2: link is slow to respond, please be patient (ready=0)
[   62.608015] ata2: SRST failed (errno=-16)
[   67.636015] ata2: SRST failed (errno=-16)
[   67.636023] ata2: reset failed, giving up
[   67.636180] scsi 0:0:0:0: Direct-Access     ATA      ST380023A        3.31 PQ: 0 ANSI: 5
---- STARTS TO BOOT UP NORMALLY HERE ----

So basically, it won't boot if your rootdelay is under roughly 70 seconds.
Comment 2 Tejun Heo 2009-01-21 17:25:06 UTC
Can you please post kernel boot log from working (older kernel) setup?
Comment 3 Morgan 2009-01-22 20:33:29 UTC
I will tomorrow as I am not actually at the computer now. I will also post a log of it totally timing out if the rootdelay is under 70 seconds.
Comment 4 Morgan 2009-01-23 16:25:48 UTC
Created attachment 19973 [details]
Dmesg output - 2.6.24-21_generic bootup
Comment 5 Morgan 2009-01-23 16:26:44 UTC
Created attachment 19974 [details]
Dmesg output - 2.6.27.10 timeout
Comment 6 Morgan 2009-01-23 16:27:37 UTC
Created attachment 19975 [details]
Dmesg output - 2.6.27.10 bootup
Comment 7 Morgan 2009-01-23 16:28:19 UTC
Created attachment 19976 [details]
Dmesg output - 2.6.28 timeout
Comment 8 Tejun Heo 2009-01-24 21:57:43 UTC
What happens if you disable pata_acpi?
Comment 9 Morgan 2009-01-25 06:37:39 UTC
(In reply to comment #8)
> What happens if you disable pata_acpi?
> 

What boot command is that?
Comment 10 Tejun Heo 2009-01-26 17:36:04 UTC
It's distro specific, so you'll need to dig documentation of your distro.
Comment 11 Morgan 2009-01-29 16:04:46 UTC
Tried it - didn't work.
Comment 12 Tejun Heo 2009-01-30 21:55:20 UTC
Can you please post kernel boot log?
Comment 13 Morgan 2009-02-06 15:01:16 UTC
Created attachment 20142 [details]
Dmesg output - 2.6.27.10 timeout with noacpi

The rootdelay option was not set, therefore it timed out.
Comment 14 Morgan 2009-02-06 15:02:02 UTC
Created attachment 20143 [details]
Dmesg output - 2.6.27.11 boot with noacpi

It booted because I had rootdelay set.
Comment 15 Morgan 2009-02-06 15:02:22 UTC
Created attachment 20144 [details]
Dmesg output - 2.6.28 timeout with noacpi
Comment 16 Morgan 2009-02-07 12:31:09 UTC
Created attachment 20158 [details]
Dmesg output- 2.6.28.4 boot with all_generic_ide

This is 2.6.28.4 booting with all_generic_ide. A side effect of all_generic_ide is very high swap and cpu usage.
Comment 17 Tejun Heo 2009-02-11 00:44:57 UTC
In all cases, pata_acpi was still being probed before pata_sis.  Can you please try to take that out?