Problem with multiple scsi adapters and drive assignments

John A. johna9999 at
Tue Mar 18 16:04:45 PDT 2008

I've searched all over (not totally exhaustive, but close) and can't find an
answer that I thought would have come up before.  Basically, I need to
change the order that the kernel assigns drive names on bootup.

It all started out with an old Intel server board with NCR/Symbios scsi
builton.  I added a QLogic QLA2100 fibre controller and everything was fine
except that it was a little slow and couldn't hold enough ram.  I took
another (newer) Intel server board and put it in the case.  This board has
an Adaptec AIC7896 builtin.  My custom kernel didn't have the aic driver so
I took the opportunity to upgrade to 7.0 and built a new kernel.  Everything
was fine until I turned on the external fibre chassis and found that my da0
became da7.  The board is in a rack-mount case so I cant put the QLA into a
different slot and the bios doesn't have any way to change irq settings on
the pci slots.

I my mind, the logical answer is to tell FBSD to scan ahc0 before isp0.
Through all my searching through docs and the mailing list archives, I can't
find any mention of how to do this.  I did find one mention of turning off
the bios on the offending scsi card (it was a system with 2 Adaptecs).  Been
there, tried that, didn't work.  Feel free to slap my face and call me
stupid as long as you point my to the proper info if I somehow missed it.
Here are the relevant parts of dmesg if that helps (I didn't include the
drives themselves since I can't get it boot with the external chassis turned

FreeBSD 7.0-RELEASE #1: Mon Mar 17 14:43:04 EDT 2008
    john at media:/usr/obj/usr/src/sys/MYKERN
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel Pentium III (596.92-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0x681  Stepping = 1

real memory  = 2139029504 (2039 MB)
avail memory = 2087882752 (1991 MB)
ACPI APIC Table: <Intel  N440BX  >
ioapic0 <Version 1.1> irqs 0-23 on motherboard
kbd1 at kbdmux0
acpi0: <PTLTD   RSDT> on motherboard
acpi0: [ITHREAD]
acpi0: Power Button (fixed)
Timecounter "ACPI-safe" frequency 3579545 Hz quality 850
acpi_timer0: <24-bit timer at 3.579545MHz> port 0xc08-0xc0b on acpi0
cpu0: <ACPI CPU> on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
agp0: <Intel 82443GX host to PCI bridge> on hostb0
pcib1: <PCI-PCI bridge> at device 1.0 on pci0
pci1: <PCI bus> on pcib1
pcib2: <PCI-PCI bridge> at device 15.0 on pci1
pci2: <PCI bus> on pcib2
isp0: <Qlogic ISP 2100 PCI FC-AL Adapter> port 0x2000-0x20ff mem
0xf4500000-0xf4500fff irq 19 at device 9.0 on pci0
firmware_get: failed to load firmware image isp_2100
isp0: [ITHREAD]
isp0: Board Type 2100, Chip Revision 0x3, resident F/W Revision 1.15.21
pci0: <simple comms> at device 11.0 (no driver attached)
ahc0: <Adaptec aic7896/97 Ultra2 SCSI adapter> port 0x2400-0x24ff mem
0xf4501000-0xf4501fff irq 19 at device 12.0 on pci0
ahc0: [ITHREAD]
aic7896/97: Ultra2 Wide Channel A, SCSI Id=7, 32/253 SCBs
ahc1: <Adaptec aic7896/97 Ultra2 SCSI adapter> port 0x2800-0x28ff mem
0xf4502000-0xf4502fff irq 19 at device 12.1 on pci0
ahc1: [ITHREAD]
aic7896/97: Ultra2 Wide Channel B, SCSI Id=15, 32/253 SCBs

Thanks in advance for your help, the archives of this list have been very
helpful over the past 5 years.

More information about the freebsd-questions mailing list