> >Why do you need to add this to the netdev? For iscsi offload like with >bnx2i and cxgb3i we want to interact with the netdevice, but have not >added any fields. Is FCOE going to be different from iscsi in the >offload processing so it is needed, or is this something that might be >nice for all offload engines? I will look into the code for iscsi in bnx2i and cxgb3i but if you can give a highlight of how the interaction w/ netdev is done, it will be great. BTW, where are bnx2i&cxgb3i codes hosted? I did not find them in scsi branch.
The problem is for direct data placement is that em needs to know what exchange id to allocate for offload, i.e., for scsi read request, LLD is then able to setup the offload for this exchange if that xid is in supported range of xids for offload. We can pass this when creating interface or query on the fly, in any case, FCoE needs to interact w/ LLD via netdevice. For this purpose, so far, here are the options: 1. This is our existing original approach. Keep codes used by fcoe in a separate driver module, it will be loaded by fcoe and builds up the bridge for fcoe and LLD to hook up foce w/ all the needed offload functions or needed data. This bypasses netdev completely. The separate module is part of LLD as a function extension to provide the offload transport for fcoe. It needs to both LLD and FCoE since without this loadable module, loading LLD w/ would end up loading fcoe too. 2. use netdevice existing fields to host fcoe offload functions: I did not find anyone that can be used to serve our purpose directly but I will have to look into iscsi code that you mentioned to be sure. 3. as Joe mentioned in the previous messaage, we can also use ioctl to query the offload capabilities of LLD and hook them up via fcoe_softc. 4. the proposed adding new field to netdev dedicated to fcoe I feel it is good for fcoe in the long run to have something like fcoe_data in netdevice. Thanks. yi _______________________________________________ devel mailing list [email protected] http://www.open-fcoe.org/mailman/listinfo/devel
