device.hints isn't setting what I want

Greg Byshenk freebsd at byshenk.net
Fri Jan 22 09:01:26 UTC 2010


On Thu, Jan 21, 2010 at 08:23:23PM -0500, Dan Langille wrote:
 
> First, see also my post: do I want ch0 or pass1?
> 
> I have an external tape library and an external tape drive.  They are
> not always powered up.  My goal: always get the same devices regardless
> of whether or not the tape library is powered on at boot.
> 
> After booting, with the tape library powered on, I have these devices:
> 
> # camcontrol devlist
> <QUANTUM DLT7000 1E48>             at scbus0 target 5 lun 0 (sa0,pass0)
> <DEC TL800    (C) DEC 0326>        at scbus1 target 0 lun 0 (ch0,pass1)
> <DEC TZ89     (C) DEC 1837>        at scbus1 target 5 lun 0 (sa1,pass2)
> <HL-DT-ST DVDRAM GSA-H10A JL02>    at scbus2 target 0 lun 0 (cd0,pass3)
> <USB 2.0 Storage Device 0100>      at scbus5 target 0 lun 0 (da0,pass4)
> 
> In /boot/devices, I have added these entries:
> 
> hint.scbus.1.at="ahc0"
> hint.scbus.0.at="ahc1"
> hint.scbus.2.at="acd0"
> hint.scbus.5.at="umass0"

I think that this is wrong.

I had a similar issue (multiple tape drives and changer devices that 
needed to stay at the same ids).

Your device.hints entries should look something like this:

   hint.sa.0.at="scbus0"
   hint.sa.0.target="5"
   hint.sa.0.unit="0"
   hint.sa.1.at="scbus0"
   hint.sa.1.target="3"
   hint.sa.1.unit="0"
   hint.sa.2.at="scbus0"
   hint.sa.2.target="1"
   hint.sa.2.unit="0"
   hint.ch.0.at="scbus0"
   hint.ch.0.target="4"
   hint.ch.0.unit="0"
   hint.ch.1.at="scbus0"
   hint.ch.1.target="2"
   hint.ch.1.unit="0"
   hint.ch.2.at="scbus0"
   hint.ch.2.target="0"
   hint.ch.2.unit="0"

Which I use to get this:

   # camcontrol devlist
   <SONY LIB-162 0208>                at scbus0 target 0 lun 0 (pass0,ch2)
   <SONY SDX-1100 0102>               at scbus0 target 1 lun 0 (sa2,pass1)
   <SONY LIB-162 0203>                at scbus0 target 2 lun 0 (pass2,ch1)
   <SONY SDX-900V 0102>               at scbus0 target 3 lun 0 (sa1,pass3)
   # 

(Currently the first changer is not powered up.)


So I think that what you want is something like:

   hint.sa.0.at="scbus0"
   hint.sa.0.target="5"
   hint.sa.0.unit="0"
   hint.sa.1.at="scbus1"
   hint.sa.1.target="5"
   hint.sa.1.unit="0"
   hint.ch.0.at="scbus1"
   hint.ch.0.target="0"
   hint.ch.0.unit="0"
   [...]


-- 
greg byshenk  -  gbyshenk at byshenk.net  -  Leiden, NL


More information about the freebsd-stable mailing list