Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 08 Feb 2005 15:10:04 -0700
From:      Scott Long <scottl@freebsd.org>
To:        Dan Nelson <dnelson@allantgroup.com>
Cc:        freebsd-scsi@freebsd.org
Subject:   Re: how CAM/HBA probe for devices?
Message-ID:  <420938BC.6050800@freebsd.org>
In-Reply-To: <20050208214956.GA3104@dan.emsphone.com>
References:  <E1CyYUO-0003tg-IT@cs1.cs.huji.ac.il> <4208F618.3000400@freebsd.org> <20050208214956.GA3104@dan.emsphone.com>

next in thread | previous in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?420938BC.6050800>