tying down adaX to physical interfaces

Michael DeMan freebsd at deman.com
Sat Mar 26 02:02:51 UTC 2011


Yeah - this is what I was looking for.  I can morph it for mvsch.

In regards to prior post...
The glabel solution works too, but again gets complicated when a regular staff person just needs to swap out a drive, has the disk drive in hand (which could either not have a glabel on it or maybe has one from somewhere else by accident), and just needs to replace a drive.

Thanks!

- mike

On Mar 25, 2011, at 5:38 PM, Kostik Belousov wrote:

> On Fri, Mar 25, 2011 at 05:21:50PM -0700, Michael DeMan wrote:
>> Hi All,
>> 
>> I seem to recall that there is a way to do this, but can no longer google it.
>> 
>> Basically, for NCQ support with SATA devices we are using the 'ada' driver, which of course has SCSI like behavior.
>> 
>> With two 8-port disk controllers in the system, we end up in the uncomfortable situation where if the box is rebooted with an 'earlier' drive in the list, the system boots up with different drives mapped to adaX.  This becomes more of a problem with multiple drive controllers and not all the ports populated with drives at the start (i.e, add more drives later).
>> 
>> In our case, we have two Marvell controllers, and are doing ZFS mirroring with drives off each controller.
>> 
>> We end up with mvsch.0 through mvsch.15 showing up (16 controller interfaces), but with only 10 drives right now, we end up with ada0 through ada9.  If we lose a drive and reboot, then we end up with the upper ones each being ada(X-1), etc.  If we add more drives, the situation becomes even more confusing.
>> 
>> Is there a way to force at boot time a mapping from the mvsch interface to the specific ada disk that the operating system sees?  Pretty sure I saw something about this last summer but can't seem to find it now.
>> 
>> What we would like to have, with 10 disks, is them showing up as:
>> ada0, ada1, ada2, ada3, ada4
>> ada8, ada9, ada10, ada11, ada12
>> 
>> If we add another pair of disks in the future, we would know where to physically insert them for ada5 and ada13, etc.
> 
> I use the following stanza in /boot/device.hints for machine with intel
> on-board ahci and siis in pcie:
> hint.scbus.0.at="ahcich0"
> hint.ada.0.at="scbus0"
> hint.scbus.1.at="ahcich1"
> hint.ada.1.at="scbus1"
> hint.scbus.2.at="ahcich2"
> hint.ada.2.at="scbus2"
> hint.scbus.3.at="ahcich3"
> hint.ada.3.at="scbus3"
> hint.scbus.4.at="ahcich4"
> hint.ada.4.at="scbus4"
> hint.scbus.5.at="siisch0"
> hint.ada.5.at="scbus5"
> hint.scbus.6.at="siisch1"
> hint.ada.6.at="scbus6"
> 
> You should get an idea from this.



More information about the freebsd-fs mailing list