v2: First posting came from a scsi-misc tree with two additional fcoe patches. The posting did not include the two initial fcoe patches. Those first two patches are unrelated to this body of work, but are needed for later patches to apply. V2 includes these two patches. --- The following series adds a new FC subsystem/sysfs layout to the kernel. It also adds FCoE attributes to the new devices. An initial usage by libfc, libfcoe, fcoe and fnic is also in this series. This change is quite large and touches a lot of things. My current TODO list is: 1) target support 2) user space - libhbalinux: have a start on support, but not complete - libVirt 3) bnx2fc 4) sysfs usage: not sure I'm doing things correctly At this point I have working code, but I would appreciate any review comments as there are a lot of design decisions to be made. I apologize for the very large patches. I am not sure how to break them up better. I have tried a few ways, but the resultant patches tend to be more complicated than when they are merged. Any suggestions on how to make these patches smaller or more easily reviewable would be appreciated as well. --- Robert Love (10): libfcoe: Remove mutex_trylock/restart_syscall checks fcoe: Remove mutex_trylock/restart_syscall checks fc: Create FC sybsystem scsi_transport_fcp: Create FC/SCSI interaction layer libfc, libfcoe, fcoe: Make use of FC subsystem fc: Add FCoE attributes to FC sysfs libfcoe, fcoe: Use FCoE attributes fnic: Convert to new FC Sysfs infrastructure fc: Add a hbaapi_lib attribute to the fcport structure Documentation: Add fc_sysfs document Documentation/fc/fc_sysfs.txt | 192 ++++ Documentation/fc/libfc_libfcoe_fcoe.txt | 17 drivers/Kconfig | 2 drivers/Makefile | 1 drivers/fc/Kconfig | 8 drivers/fc/Makefile | 10 drivers/fc/fcfabric.c | 547 +++++++++++ drivers/fc/fcfabric_fcoe.c | 123 ++ drivers/fc/fcport.c | 453 +++++++++ drivers/fc/fcport_fcoe.c | 134 +++ drivers/fc/fcrport.c | 1012 ++++++++++++++++++++ drivers/fc/fcsysfs.c | 176 +++ drivers/fc/fcsysfs.h | 102 ++ drivers/fc/fcvport.c | 695 ++++++++++++++ drivers/fc/fcvport_fcoe.c | 118 ++ drivers/scsi/Kconfig | 12 drivers/scsi/Makefile | 1 drivers/scsi/fcoe/fcoe.c | 770 ++++++++------- drivers/scsi/fcoe/fcoe.h | 6 drivers/scsi/fcoe/fcoe_ctlr.c | 310 ++++-- drivers/scsi/fcoe/fcoe_transport.c | 36 - drivers/scsi/fcoe/libfcoe.h | 4 drivers/scsi/fnic/fnic.h | 33 - drivers/scsi/fnic/fnic_fcs.c | 32 - drivers/scsi/fnic/fnic_isr.c | 13 drivers/scsi/fnic/fnic_main.c | 412 ++++---- drivers/scsi/fnic/fnic_res.c | 47 - drivers/scsi/fnic/fnic_scsi.c | 193 ++-- drivers/scsi/libfc/fc_disc.c | 4 drivers/scsi/libfc/fc_exch.c | 11 drivers/scsi/libfc/fc_fcp.c | 120 +- drivers/scsi/libfc/fc_libfc.h | 40 - drivers/scsi/libfc/fc_lport.c | 208 ++-- drivers/scsi/libfc/fc_npiv.c | 87 +- drivers/scsi/libfc/fc_rport.c | 19 drivers/scsi/scsi_transport_fcp.c | 1571 +++++++++++++++++++++++++++++++ include/fc/fc.h | 1055 +++++++++++++++++++++ include/scsi/fc_encode.h | 40 - include/scsi/libfc.h | 96 +- include/scsi/libfcoe.h | 18 include/scsi/scsi_transport_fcp.h | 307 ++++++ 41 files changed, 7926 insertions(+), 1109 deletions(-) create mode 100644 Documentation/fc/fc_sysfs.txt create mode 100644 Documentation/fc/libfc_libfcoe_fcoe.txt create mode 100644 drivers/fc/Kconfig create mode 100644 drivers/fc/Makefile create mode 100644 drivers/fc/fcfabric.c create mode 100644 drivers/fc/fcfabric_fcoe.c create mode 100644 drivers/fc/fcport.c create mode 100644 drivers/fc/fcport_fcoe.c create mode 100644 drivers/fc/fcrport.c create mode 100644 drivers/fc/fcsysfs.c create mode 100644 drivers/fc/fcsysfs.h create mode 100644 drivers/fc/fcvport.c create mode 100644 drivers/fc/fcvport_fcoe.c create mode 100644 drivers/scsi/scsi_transport_fcp.c create mode 100644 include/fc/fc.h create mode 100644 include/scsi/scsi_transport_fcp.h -- 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