From owner-freebsd-fs@FreeBSD.ORG Sat Mar 26 02:02:51 2011 Return-Path: Delivered-To: freebsd-fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 946E5106564A for ; Sat, 26 Mar 2011 02:02:51 +0000 (UTC) (envelope-from freebsd@deman.com) Received: from cp11.openaccess.org (cp11.openaccess.org [66.114.41.130]) by mx1.freebsd.org (Postfix) with ESMTP id 710FE8FC0A for ; Sat, 26 Mar 2011 02:02:51 +0000 (UTC) Received: from c-67-170-191-30.hsd1.wa.comcast.net ([67.170.191.30] helo=[192.168.1.111]) by cp11.openaccess.org with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.69) (envelope-from ) id 1Q3HoW-00025N-OU; Fri, 25 Mar 2011 17:57:12 -0700 Mime-Version: 1.0 (Apple Message framework v1084) Content-Type: text/plain; charset=us-ascii From: Michael DeMan In-Reply-To: <20110326003818.GT78089@deviant.kiev.zoral.com.ua> Date: Fri, 25 Mar 2011 17:57:10 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: References: <20110326003818.GT78089@deviant.kiev.zoral.com.ua> To: Kostik Belousov X-Mailer: Apple Mail (2.1084) X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cp11.openaccess.org X-AntiAbuse: Original Domain - freebsd.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - deman.com X-Source: X-Source-Args: X-Source-Dir: Cc: freebsd-fs@freebsd.org Subject: Re: tying down adaX to physical interfaces X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Mar 2011 02:02:51 -0000 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, >>=20 >> I seem to recall that there is a way to do this, but can no longer = google it. >>=20 >> Basically, for NCQ support with SATA devices we are using the 'ada' = driver, which of course has SCSI like behavior. >>=20 >> 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). >>=20 >> In our case, we have two Marvell controllers, and are doing ZFS = mirroring with drives off each controller. >>=20 >> 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. >>=20 >> 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. >>=20 >> What we would like to have, with 10 disks, is them showing up as: >> ada0, ada1, ada2, ada3, ada4 >> ada8, ada9, ada10, ada11, ada12 >>=20 >> If we add another pair of disks in the future, we would know where to = physically insert them for ada5 and ada13, etc. >=20 > I use the following stanza in /boot/device.hints for machine with = intel > on-board ahci and siis in pcie: > hint.scbus.0.at=3D"ahcich0" > hint.ada.0.at=3D"scbus0" > hint.scbus.1.at=3D"ahcich1" > hint.ada.1.at=3D"scbus1" > hint.scbus.2.at=3D"ahcich2" > hint.ada.2.at=3D"scbus2" > hint.scbus.3.at=3D"ahcich3" > hint.ada.3.at=3D"scbus3" > hint.scbus.4.at=3D"ahcich4" > hint.ada.4.at=3D"scbus4" > hint.scbus.5.at=3D"siisch0" > hint.ada.5.at=3D"scbus5" > hint.scbus.6.at=3D"siisch1" > hint.ada.6.at=3D"scbus6" >=20 > You should get an idea from this.