2.1.9 panic on boot

Trevor Johnson (trevor@nether.net)
Wed, 13 Nov 1996 17:07:40 -0801 (PST)


When I partitioned my hard disk, I set it up in the "normal" CHS mode
because I'd heard that some drives are a little faster when using this. I
forgot to put the boot partition below cylinder 1024, so LILO didn't work.
My solution to this was to change the BIOS setting from "NORMAL" to "LBA,"
and this worked fine through Linux 2.1.7. With 2.1.8, I had to add

append="hda=973,64,63"

to the boot parameters to avoid a panic at boot time. Now that doesn't
work. I tried that parameter, as well as "hda=973,64,36" or
"hda=3893,16,63" and "ide0=noprobe" in various combinations, and get
messages such as:

hda: Maxtor 72004 AP, ATA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
hda: Maxtor 72004 AP, 1916MB w/128kB Cache, LBA, CHS=973/64/63
Partition check:
hda:Started kswapd v 1.4.2.2
hda1 hda2 < hda5 hda6 hda7 hda8 >
attempt to access beyond end of device
03:02: rw=0, want=2, limit=1
EXT2-fs: unable to read superblock
Kernel panic: VFS: Unable to mount root fs on 03:02
Rebooting in 30 seconds....

or

VFS: Cannot open root device 03:02

or (with "hda=973,64,36" and "ide0=noprobe"):

hda: INVALID GEOMETRY: 64 PHYSICAL HEADS?
Kernel panic: VFS: Unable to mount root fs on 03:02

Must I repartition to run Linux 2.1.9? Here are the results of hdparm -i:

Model=Maxtor 72004 AP, FwRev=2A3C0B31, SerialNo=S209L3ES
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>5Mbs FmtGapReq }
RawCHS=3893/16/63, TrkSize=0, SectSize=0, ECCbytes=34
BuffType=3(DualPortCache), BuffSize=128kB, MaxMultSect=32, MultSect=32
DblWordIO=yes, maxPIO=2(fast), DMA=yes, maxDMA=1(medium)
CurCHS=3893/16/63, CurSects=3924144, LBA=yes, LBAsects=3924360
tDMA={min:120,rec:120}, DMA modes: sword0 sword1 *sword2 mword0 mword1
*mword2
IORDY=on/off, tPIO={min:180,w/IORDY:120}, PIO modes: mode3 mode4

and the ugliness of fdisk -l:

Disk /dev/hda: 64 heads, 63 sectors, 973 cylinders
Units = cylinders of 2064384 bytes, blocks of 1024 bytes, counting from 0

Device Boot Start End #cyls #blocks Id System
/dev/hda1 * 0+ 255 256- 516064+ 6 DOS 16-bit FAT >=32M
end: (c,h,s) expected (255,63,63) found (1023,15,63)
partition ends on cylinder 1023, beyond the end of the disk
/dev/hda2 256 973- 718- 1445976 5 DOS Extended
start: (c,h,s) expected (256,0,1) found (1023,15,63)
end: (c,h,s) expected (973,15,63) found (1023,15,63)
partition ends on cylinder 1023, beyond the end of the disk
/dev/hda3 0 - 0 0 0 Empty
/dev/hda4 0 - 0 0 0 Empty
/dev/hda5 256+ 264- 9- 17104+ 83 Linux native
start: (c,h,s) expected (256,1,1) found (1023,15,63)
end: (c,h,s) expected (264,31,63) found (1023,15,63)
partition ends on cylinder 1023, beyond the end of the disk
/dev/hda6 264+ 274- 11- 20632+ 83 Linux native
start: (c,h,s) expected (264,33,1) found (1023,15,63)
end: (c,h,s) expected (274,47,63) found (1023,15,63)
partition ends on cylinder 1023, beyond the end of the disk
/dev/hda7 274+ 794 521- 1048792+ 83 Linux native
start: (c,h,s) expected (274,49,1) found (1023,15,63)
end: (c,h,s) expected (794,63,63) found (1023,15,63)
partition ends on cylinder 1023, beyond the end of the disk
/dev/hda8 795+ 973- 179- 359320+ 83 Linux native
start: (c,h,s) expected (795,1,1) found (1023,15,63)
end: (c,h,s) expected (973,15,63) found (1023,15,63)
partition ends on cylinder 1023, beyond the end of the disk

Here are the relevant (I think) kernel options I have set:

CONFIG_BLK_DEV_IDE=y
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_EXT2_FS=y
___
Trevor Johnson <trevor@jpj.org>