Daniel Debonzi, on 03/20/2009 09:01 PM wrote:
> Love, Robert W wrote:
>> Daniel Debonzi wrote:
>>> Hi all,
>>>
>>> I am starting to get in touch with the Open FCoE project (and also the
>>> Fibre Channel thing itself) and as far as one of my tasks is work with
>>> the Open FCoE target I started to gather information regarding that.
>>>
>>> I had an initial conversation with Robert but we didn't entered to
>>> much in details about the target so as he mentioned a good place to
>>> figure things out is here.
>>>
>>>
>>> First of all, I apologize in advance if I write something really
>>> stupid or non-sense because as I wrote before, I am just starting.
>>>
>>> The first thing I would like to ask about is the status of the FCoE
>>> target and how dependent on the SCST project it is.
>>>
> 
> 
>> The status is that it's mostly rotting and may not be functional as-is.
>> It's based on our old initiator code as well as SCST, neither of which
>> are in-kernel.
>>
>> Sivaram, Joe and Mike have been discussing some patches recently to
>> update the target to get it working again.
>>
>> IMO if we want an FCoE target we need to decide on which framework to
>> use. Either SCST needs to get in-kernel or we need to base the FCoE
>> target on stgt. My understanding is that the main difference in the
>> two projects is that SCST is mostly kernel code where stgt is mostly
>> user space code (with some kernel components which are allready upstream).
>> There have been a lot of technical discussions on the subject of
>> what the target infrastructure should look like on linux-scsi.
>>
>> So, depending on which direction is decided upon one would then need
>> to either hook our upstream initiator into SCST (once it's upstream)
>> or port our current initiator code to userspace to work with stgt.
> 
> I know that there is already a FCoE target implementation using SCST but 
> as long as it probably needs a re-factory and also SCST didn't get into 
> kernel I fell that have it using tgt would be a good idea. Reasons:
> 
>    - Would allow a fully user space implementation (I am supposing that 
> the actual implementation have some kernel bits).
> 
>    - The kernel parts of tgt are already on the mainline kernel which I 
> believe would make any FCoE contribution to tgt get to the mainline 
> kernel easier.
> 
> I am not considering performance on that because I don't have this info.

Target drivers for SCST has better performance than target drivers for 
STGT not only because they are in the kernel, but also because in-kernel 
architecture of SCST allows things, not possible from user space STGT. 
Particularly:

  - Zero-copy FILEIO. This feature is fundamentally impossible from user 
space. I don't think you will doubt that zero-copy data access is a big 
performance win.

  - Zero-copy network send.

  - Fully asynchronous BLOCKIO.

  - Access to IO threads IO context.

  - Much simpler and more effective asynchronous FILEIO.

  - etc.
_______________________________________________
devel mailing list
[email protected]
http://www.open-fcoe.org/mailman/listinfo/devel

Reply via email to