Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

How does CAM determine the order to number drives ?

1 view
Skip to first unread message

petef...@ticketswitch.com

unread,
Jul 31, 2004, 3:26:51 PM7/31/04
to
Hi, I have a small server which boots from an
Adaptec 2940 controller under CAM, and serves drives
off a Compaq 4200 RAID controller.

I have spent the afternoon ttrying to upgrade the
RAID controller from a 4200 to a 5300. The 5300 uses
the CISS driver rather than the IDA driver, and this
lives under CAM too. Thus my RAID drives have changed
from being idad devices to being da devices.

Unfortunately the RAID controller gets scanned first
so I now have a da0 and a da1 where I didnt before, and my
root drive has moved to da2.

I can't persuade it to boot like this - it refuses to mount
the root from da2. The simplest solution, of course, would
be to somehow force the CAM system to scan the Adaptec
controller first, so that the root device is back in da0
where it belongs. But I cant find out if there is a way
of dojing this, or indeed how the system determines the order
at all.

Any suggestions ?

-pcf.

PS: System is 4.10-RELEASE, though I suspect this is irrelevent
_______________________________________________
freebsd...@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stabl...@freebsd.org"

mg-f...@grant.org

unread,
Jul 31, 2004, 4:06:20 PM7/31/04
to
Yes, I know this situation all to well. In my case, I ended up
physically plugging and unplugging drives until they ended up in the
right place.

I would sure love to see a way to fix a drive to an identifier. This
has to be the one thing that has wasted more of my time than anything
else in freebsd. For example, when I had a drive die on me a couple
months back, when the machine rebooted, the dead drive still in the
system, da2 became da1 and things just did not work well.

If someone knows of a way to tie physical drives to the nodes in /dev,
please let me know. I've heard that this auto drive numbering
is a bios "feature" which is impossible to get around.

Michael Grant

sco...@freebsd.org

unread,
Aug 1, 2004, 10:43:00 AM8/1/04
to
On Sun, 1 Aug 2004, Pete French wrote:
> > You can wire down particular devices to a given SCSI bus, target and
> > LUN. Thus in your (4.x) kernel config you can say:
> >
> > device scbus0 at ahc0
> > device da0 at scbus0 target 0 unit 0
>
> Thanks for this - it looked as though it was just what I needed. I built
> a kernel with scbus0 placed at ahc? (ahc0 would not compile - but I only
> have one Adaptec controller in the machine). I would have thought this
> was sufficient as it would then scan scbus0 first and thus find the
> Addapted conntected drive first. But it did not appear to do this - I
> still had the ciss drives appearing first.

You need to explicitely define 'ahc0' as so:

device ahc
device ahc0 /* declared for wiring */
device scbus
device scbus0 at ahc0

Wiring down the controller number doesn't usually affect drive ordering.
All drives on all controllers are scanned at once in parallel, and the
first to respond on any controller, regardless of the controller number,
get to be da0.

Scott

0 new messages