Problems with boot order of multiple adapters

Stefan Engel Stefan.Engel at syngenio.de
Fri Jan 25 10:07:57 PST 2002


Hi,

I have the following problem concering the boot
order of Adaptec controllers using Linux (SuSE Linux
7.3, Kernel 2.4.16):

The system is a DELL PowerEdge 2550 with AIC7899 on board
and a separate Adaptec 29160 (AIC7892) as add-on card
on the PCI riser board.

When booting, the BIOS first reports the SCSI devices found
for the internal on-board SCSI controller, in our configuration:

Channel A
  ID 0 FUJITSU MAN3184MC 
  ID 7 DELL 1x4 U2W SCSI BP

Channel B
  ID 4 OVERLAND LXB
  ID 5 QUANTUM SuperDLT1

Then the external controller reports the external devices

Channel A
  ID 0 easyRAID X12

The boot order in the DELL BIOS is configured to first use the
specified boot order (Floppy, CDROM, Disc), second the internal
on-board controller, third the 29160.

Now Linux starts booting from the internal disk (/dev/sda1) which is
is specified in the BIOS. But when the kernel is coming up, the following
order of the controllers appear in the console log (excerpt from boot.msg):

<6>scsi0 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.4
<4>        <Adaptec 29160 Ultra160 SCSI adapter>
<4>        aic7892: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
<4>
<6>scsi1 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.4
<4>        <Adaptec aic7899 Ultra160 SCSI adapter>
<4>        aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
<4>
<6>scsi2 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.4
<4>        <Adaptec aic7899 Ultra160 SCSI adapter>
<4>        aic7899: Ultra160 Wide Channel B, SCSI Id=7, 32/253 SCBs
<4>
<4>blk: queue dff91698, I/O limit 4095Mb (mask 0xffffffff)
<4>  Vendor: FUJITSU   Model: MAN3184MC         Rev: 5508
<4>  Type:   Direct-Access                      ANSI SCSI revision: 03
<4>blk: queue dff91598, I/O limit 4095Mb (mask 0xffffffff)
<4>(scsi1:A:0): 160.000MB/s transfers (80.000MHz DT, offset 127, 16bit)
<4>  Vendor: DELL      Model: 1x4 U2W SCSI BP   Rev: 1.30
<4>  Type:   Processor                          ANSI SCSI revision: 02
<4>blk: queue dff91498, I/O limit 4095Mb (mask 0xffffffff)
<4>scsi1:A:0:0: Tagged Queuing enabled.  Depth 253
<4>  Vendor: OVERLAND  Model: LXB               Rev: 0104
<4>  Type:   Medium Changer                     ANSI SCSI revision: 02
<4>blk: queue dff91398, I/O limit 4095Mb (mask 0xffffffff)
<4>(scsi2:A:4): 20.000MB/s transfers (10.000MHz, offset 15, 16bit)
<4>  Vendor: QUANTUM   Model: SuperDLT1         Rev: 2323
<4>  Type:   Sequential-Access                  ANSI SCSI revision: 02
<4>blk: queue dff91298, I/O limit 4095Mb (mask 0xffffffff)
<4>(scsi2:A:5): 80.000MB/s transfers (40.000MHz, offset 62, 16bit)
<4>Attached scsi disk sda at scsi1, channel 0, id 0, lun 0
<4>SCSI device sda: 35566478 512-byte hdwr sectors (18210 MB)

As you can see, Linux first sees the "external" 29160 adapter (scsi0)
before the on-board controller (scsi1, scsi2). The problem now
is, that if the RAID-System is connected to the 29160, it is found
at scsi0 and treated as /dev/sda. In this case the internal harddisk
becomes /dev/sdb and the kernel does not find the
root partition (expected to be on /dev/sda6) and panics.

Analyzing /proc/pci revealed the the 29160 is found ionPCI bus 0
whereas the on-board controller is found on PCI bus 3.

I tried the same configuration with a DELL PowerEdge 1550
(identical Linux setup, two harddisks instead of one, the on-board
controllers are 7899). Here the 29160 adapter is found at scsi2
and the internal controllers at scsi0 and scsi1 and everything
works fine.

On the DELL 2550 I even tried to boot Linux using the command line
option "aic7xxx=reverse_scan" (I tried the LILO setting too) but the
behaviour remains the same.

Is there any way to tell Linux or the device driver to first use the internal
controllers and then the 29160?

Maybe I am missing something here. Can you point me in the right
direction on how to solve this problem?


Thanks in advance and best regards,

Stefan

--
Stefan Engel                      Syngenio AG
mailto:Stefan.Engel at syngenio.de   http://www.syngenio.de



To Unsubscribe: send mail to majordomo at FreeBSD.org
with "unsubscribe aic7xxx" in the body of the message




More information about the aic7xxx mailing list