Bug 7123 - lilo installs bad boot loader with 4 disks + good BIOS
Summary: lilo installs bad boot loader with 4 disks + good BIOS
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: lilo
Version: 6.1
Hardware: i386
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Michael K. Johnson
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 1999-11-19 00:02 UTC by Joe Harrington
Modified: 2008-05-01 15:37 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2000-01-04 22:27:28 UTC
Embargoed:


Attachments (Terms of Use)

Description Joe Harrington 1999-11-19 00:02:18 UTC
This problem is not what it first seemed (BIOS unable to talk to 4 disks).

My system has 4 disks, 2 SCSI (ID 0 and 1) and 2 IDE (hda and hdc).  / is
on sda5, and /boot is on sda1, which is in cylinders 1 and 2 only.  I'm
using the MBR in sda and the BIOS is set to boot off SCSI, not IDE.  The
BIOS can talk to all disks.  This worked fine in 5.0, which I ran for 2
years with this boot disk, a Seagate Cheetah 4.1 GB UWSCSI on a
motherboard-resident aic7xxx.  It's an AMI BIOS vintage 9/1997 on a
SuperMicro dual-CPU motherboard.

Under 6.1, running lilo (accepting the "not first disk" warning) and
rebooting gives a "LI" boot hang.  I have not moved /boot/boot.b since
running lilo, and there is no indication that the geometry is being
reported incorrectly.  So, I disable IDE and mark the 2 IDE disks as "not
installed" in the BIOS, and boot off a floppy (booting off the floppy works
fine no matter what).  I run lilo again with the same lilo.conf.  I go into
the BIOS, enable the IDE disks, and it boots fine, with all 4 disks, just
like it used to.

I bought the two IDE disks recently, likely since my last time running lilo
under 5.0, so it's possible this problem is not new.  Clearly, lilo is
installing two different bits of code into the sda MBR, depending on
whether there are other disks present.  However, the code installed with
just SCSI disks works fine with both SCSI and IDE disks present and the
BIOS set to boot off SCSI.  The code installed with SCSI and IDE disks
present doesn't work at all.  I know Red Hat doesn't officially support the
configuration I have (boot off SCSI with 2 IDE disks present), but since
it's clearly a bug I figured I'd report it.  I'm configured as I am because
I need the largest contiguous disk partitions possible, so my little SCSI
disk is the right place for the OS and boot.  I discovered the problem when
I installed 6.1 and then couldn't boot, when it had worked before.

lilo.conf:

boot=/dev/sda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
default=linux

image=/boot/vmlinuz-2.2.12-20smp
	label=linux
	initrd=/boot/initrd-2.2.12-20smp.img
	read-only
	root=/dev/sda5

image=/boot/vmlinuz-2.2.12-20
	label=linux-up
	initrd=/boot/initrd-2.2.12-20.img
	read-only
	root=/dev/sda5

--jh--

Comment 1 Carlos E. Mejia 1999-12-08 16:58:59 UTC
I am not shure that this can help to you, but I have the same LI freeze screen
when booting from SCSI disk (wel, I do not have IDE disks). I add the 'linear'
option to the lilo file and boot works fine. I have now some problems with the
SMP booting but this is another story.

Here are first lines of my /etc/lilo.conf file

boot=/dev/sda
map=/boot/map
install=/boot/boot.b
prompt
linear
timeout=50
image=/boot/vmlinuz

Comment 2 Blake Sobiloff 1999-12-30 00:54:59 UTC
I can confirm that there appears to be a lilo bug in systems that have both IDE
and SCSI hard drives, and which boot off of the SCSI drives. I have an ABIT BP6
(dual Celeron 366) with two PCI SCSI adapters (Adaptec 2930U and BusLogic BT-
930), as well as the on-board PIIX4 and HPT366 IDE adapters. (Whew!) I have a
DAT drive (st0) and a CD-ROM drive (sr0) attached to the Adaptec, two hard
disks (sda and sdb) attached to the BusLogic, and one hard disk (hda) attached
to the PIIX4. (I don't use the HPT366 adapter.)

I have WinNT Workstation 4 SP5 installed on sda and use its boot loader to
choose between it and Linux. I performed a custom install with RH 6.1 (retail)
and the updated boot disk. The install went fine and created a boot floppy
which always lets me boot to Linux, but all I ever got was "LI" when trying to
boot to Linux without the floppy.

After reading this bug report I disabled the PIIX4 in my BIOS, booted to Linux
via floppy, re-ran LILO, rebooted to NT, ran bootpart, rebooted again, selected
Linux from the NT loader, still got stuck at "LI". Damn.

Powered down, opened my case, unplugged the power cable from the IDE drive, re-
ran LILO and bootpart, selected Linux from the NT loader. Worked! (Had to
comment-out hda from fstab, though, before I could make it to runlevel 5.)
Here's my lilo.conf:

boot=/dev/sdb1
install=/boot/boot.b
prompt
timeout=50

image=/boot/vmlinuz-2.3.34
     label=linux-2.3.34
     read-only
     root=/dev/sdb1
image=/boot/vmlinuz-2.2.12-20smp
     label=linux-2.2.12smp
     initrd=/boot/initrd-2.2.12-20smp.img
     read-only
     root=/dev/sdb1

Note that I used to have "disk=/dev/sdb     bios=0x82" in there because lilo
would complain that it might not be able to see sdb. Lilo doesn't seem to need
this statement in there anymore, though.

HTH...

Comment 3 Cristian Gafton 2000-01-04 22:27:59 UTC
Assigned to dledford

Comment 4 Jeremy Katz 2002-06-04 04:55:22 UTC
If you have both IDE and SCSI hard drives, then you need to add map statements
to the lilo.conf to get it to properly figure out device ordering. 
Unfortunately, there's no way to reliably get boot device ordering information
on x86 platforms


Note You need to log in before you can comment on or make changes to this bug.