how CAM/HBA probe for devices?

Scott Long scottl at freebsd.org
Tue Feb 8 14:10:14 PST 2005


Dan Nelson wrote:

> In the last episode (Feb 08), Scott Long said:
> 
>>For iSCSI, this obviously won't work.  CAM has no concept of iSCSI
>>addresses, and even if it did, doing a linear scan of even a small
>>subnet would be prohibitively expensive.  What is really needed is a
>>new XPT layer that understands iSCSI.  By this, I mean a layer that
>>understands how to properly scan and detect targets, how to log into
>>them, etc.  It should also have a certain amount of flexibility so
>>that hardware-assisted solutions can plug in and pick-and-choose the
>>pieces they need from the transport layer.
>>
>>Lucent did an iSCSI initiator for FreeBSD 4.x a while back and I
>>think they got around all of this by telling CAM not to auto-scan at
>>boot, followed by having the driver announce devices to CAM directly
>>(look at the ATAPI-CAM code for an example of how to do this) and do
>>all the detection and login work behind CAM's back.  This really
>>should only be considered a hack though.  If you're interested, I
>>might be able to dig up the link to it.  We never pursued integrating
>>it to the FreeBSD tree because of very restrictive licensing terms on
>>it.
> 
> 
> The fibre-channel drivers (isp,mpt) must have been the first to have
> hit this problem; do they do the same thing as atapicam?
> 

Well, FC support in CAM is really limited to only simple arbitrated
loops. Unless the driver and/or firmware gets involved and massages
CAM's view of things, trying to do active-active loops and fabrics just
isn't possible.

Scott


More information about the freebsd-scsi mailing list