[Open-FCoE] Skipping scsi and openfc layer.
yi.zou at intel.com
Thu Apr 10 16:25:06 UTC 2008
>I have attached one image which show call graph of OPEN-FCOE code. As
>can see I have distinguished functions in different layers by lines and
>also have named appropriate layer (openfc, fcoe, ethernet).
>I wanted to skip the SCSI and OPENFC layer and do the communication
>with FCoE layer. I have some BIOs on initiator and want to transfer
>some pages on target. Has anyone tried like this before? What functions
>can use to skip these layers SCSI and OPENFC and call underlying FCoE
>I have marked some functions with green and red underlines in attached
>image, and I think I can use one pair of them to do above. Can anyone
>suggest which one will be more appropriate?
>As I can see FCOE layer does packing of fc_frame into SKB. What exactly
>does OPENFC layer do? Does it work in creating fc_frame?
Correct me if I am wrong....but here's what I think. As you can see,
openfc does the translation from the scsi layer to fc. I'm not sure what
you are trying to do, but if you don't want openfc at all, then who is
going to do the translation of the scsi pkt to fc frame? We don't have a
fc hba here, so we need openfc. If you look at the openfc_send_scsi
function closely, you will see the fcoe_frame_alloc() is eventually
called, which calls dev_alloc_skb().
I guess on receive side, you can do what you by not passing the skbs up
but I don't know what you are gonna pass to fcoe on the transmit side.
BTW, nice picture you got there... :)
>Sr. Systems Engg.
More information about the devel