The following series implements a move from using module parameters as control interfaces to /sys/bus/fcoe based interfaces. A sysfs infrastructure was added to the kernel a few cycles ago, this series builds on that work. It moves the create, vn2vn_create, destroy, enable and disable interfaces from /sys/module/libfcoe/parameters/ to various places under /sys/bus/fcoe/. These interfaces simply are not module configurations- they are control interfaces. A second goal of this series is to change the initialization sequence for a FCoE device. The result of this series is that interfaces created using libfcoe.ko interfaces (i.e. fcoe.ko or bnx2fc.ko) will have the following starting steps- 1) Create/alloc the port - Allocate kernel memory and create per-instance sysfs devices - No discovery or login 2) Configure the port - Change mode, set ddp_min, etc... 3) Start the port - Begins discovery and/or login (depending on mode) 4) Destroy the port - Logout and free all memory I'm looking for feedback on using sysfs files as control interfaces that the user (application) would write interface names to. I modeled this series off of the bonding sysfs interface, but it was suggested to me that it might not be a good example. I belive bonding uses two values per-file a '+' or a '-" to add or delete and then the ifname apended. I am simply writing the ifname to the ctlr_create or ctlr_destroy. Series compiled and tested against v3.5. libfcoe.ko compile warning fixed upstream after v3.5, anyone who compiles this can ignore section mismatch warning. Also note that a modified fcoemon is needed to use the fcoe system service against this kernel modification. I'd be happy to provide that fcoemon code on request. --- Robert Love (5): libfcoe, fcoe: Allow user to set a ctlr's mode libfcoe: Create new libfcoe control interfaces fcoe: Use new fcoe_sysfs control interface bnx2fc: Use new fcoe_sysfs control interface libfcoe, fcoe: Remove libfcoe module parameters Documentation/ABI/testing/sysfs-bus-fcoe | 51 +++++++ drivers/scsi/bnx2fc/bnx2fc_fcoe.c | 98 ++++++++----- drivers/scsi/fcoe/fcoe.c | 229 +++++++++++++++--------------- drivers/scsi/fcoe/fcoe.h | 9 + drivers/scsi/fcoe/fcoe_ctlr.c | 24 +++ drivers/scsi/fcoe/fcoe_sysfs.c | 139 ++++++++++++++++++ drivers/scsi/fcoe/fcoe_transport.c | 174 ++++------------------- include/scsi/fcoe_sysfs.h | 5 + include/scsi/libfcoe.h | 20 ++- 9 files changed, 445 insertions(+), 304 deletions(-) -- Thanks, //Rob -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html