Hi Folks,

The current implementation of fcoe-utils is highly dependent on netlink
sockets created on network interfaces for receiving netlink events and fc
events. We have a new multi PCI function hardware architecture which may
not expose L2 interface for storage enabled PCI functions. Due to this
network socket dependency we will not be able to use current
implementation of fcoe-utils. What we would like to do is add two library
functions to libfcoe to be able to initiate a FIP VLAN request and parse
the results to inform the LLD of the VLAN via a callback.

More specifically, we would like to add a new exported function to
libfcoe, fcoe_send_vlan_req() which would form the FIP frame and send it
to the LLD using the fcoe_ctlr->send() callback. Then in fcoe_ctlr_recv(),
we would add an additional check for the op FIP_OP_VLAN. If this check is
true we would call another new function, fcoe_process_vlan_resp(), where
we would extract the VLAN ID. We would also like to add a function
callback to the fcoe_ctlr struct, update_vlan(uint16_t vlan), which a LLD
could add a handler for to get notification of the VLAN from the FIP VLAN
request. Moving this functionality into libfcoe would enable other low
level drivers to take advantage of this functionality as well.

Note that the implementation of fcoe_send_vlan_req() would be based on
fnic_fcoe_send_vlan_req() and fcoe_process_vlan_resp() would be based on
fnic_fcoe_process_vlan_resp().

We wanted to get community feedback on this before heading in this
direction.

Thanks,
Chad

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

Reply via email to