The following series implements...
1. tcm_fc: This patch adds "tcm_fc" (glue module) which glue FCoE stack with
target core (TCM)
2. Net: Add ndo_fcoe_ddp_target() in struct net_device_ops to
support FCoE DDP in target mode
3. vlan: Add new target DDP offload support ndo_fcoe_ddp_target.
This patch depends upon patch 1 of this series.
4. ixgbe: Add support to the ndo_fcoe_ddp_target() to allow the
Intel 82599 device to also provide DDP offload capability when
5. libfc: This patch adds seperate function in libfc function template for
DDP setup (specific to target)
6. FCoE: This patch adds implementation for ndo_fcoe_ddp_setup to FCoE HBA
Driver
7. tcm_fc: Usage of new API in target provider to setup DDP for storage target
8. FCoE: This patch enhances selection logic w.r.t. offload pool for exchange
ID selection
9. libfc: This patch provides enhancement to RPORT state machine which is
applicable only in case of VN2VN.
10. FCoE: This patch simply implements round-robin based selection of CPU
for post-processing of command (for FCoE target)
11. FCoE: This patch amends first patch, it excludes the CPU which recived the
incoming request for post-processing and select other CPU. It also
addresses problem where, once rx_id is assigned, same CPU (CPU which
allocated the exchange from its per CPU pool) shall do post-processing
of incoming request including releasing exchange to the respective
per-CPU pool of exchanges.
12. libfc: Enhancement to exchange layer when FCoE stack is used in target mode
and initiator is windows based.
13. TCM Core: Fix for LUN Reset. LUN Reset was causing NULL pointer access.
14. tcm_fc: Fix for "session" being deleted because refernce count on session
was incorrectly dropped twice. This problem was only in TMR codepath.
This series contains amendment to couple of patches based on Andy Grover's
comment.
Patches which were amended:
Patch 10 -- FCoE: This patch simply implements round-robin based selection of
CPU
for post-processing of command (for FCoE target). Comment "to use cpumask*
functions"
is addressed. As well enhanced the patch to take care of UP system, CPU
going offline
after it was selected as a CPU to handle post-processing of command.
Patch 14 -- tcm_fc: Fix for "session" being deleted because refernce count on
session
was incorrectly dropped twice. This problem was only in TMR codepath.
Comment is to
rename original function (ft_send_code) as "ft_send_code_and_free" since
it also
frees command and have new function as "ft_send_code" which doesn;t free
command.
Use that new function "ft_send_code" in TMR codepath to send status of TMR
commands.
Dependencies:
---
Kiran Patil (9):
tcm_fc: Fixing reference counting problem which was causing ft_sess to be
deleted.
TCM Core : Fix for NULL pointer deference in LUN Reset codepath
libfc:Fix for exchange/seq loopup failure when FCoE stack is used as
target and connected to windows initaitor
fcoe: Amends previous patch, Round-robin based selection of CPU for post
processing of incoming request for FCoE target
fcoe: Round-robin based selection of CPU for post-processing of imcoing
commands
libfc: Enhancement to RPORT state machine applicable only for VN2VN mode
fcoe: Unable to select the exchangeID from offload pool for storage
targets
tcm_fc: New API for target to setup DDP
tcm_fc: Adding FC_FC4 glue module (tcm_fc) for storage target
Yi Zou (5):
fcoe: support ndo_fcoe_ddp_target() for DDP in FCoE targe
libfc: add ddp_targ() to libfc function template to supprot FCoE DDP in
target mode
vlan: add support to ndo_fcoe_ddp_target()
ixgbe: add support to FCoE DDP in target mode
Net: add ndo_fcoe_ddp_target() to support FCoE DDP in target mode
drivers/net/ixgbe/ixgbe.h | 2
drivers/net/ixgbe/ixgbe_fcoe.c | 86 +++-
drivers/net/ixgbe/ixgbe_fcoe.h | 4
drivers/net/ixgbe/ixgbe_main.c | 1
drivers/scsi/fcoe/fcoe.c | 88 ++++
drivers/scsi/libfc/fc_exch.c | 26 +
drivers/scsi/libfc/fc_rport.c | 14 +
drivers/target/Kconfig | 2
drivers/target/Makefile | 3
drivers/target/target_core_transport.c | 2
drivers/target/tcm_fc/Kconfig | 5
drivers/target/tcm_fc/Makefile | 15 +
drivers/target/tcm_fc/tcm_fc.h | 214 ++++++++++
drivers/target/tcm_fc/tfc_cmd.c | 706 ++++++++++++++++++++++++++++++++
drivers/target/tcm_fc/tfc_conf.c | 676 +++++++++++++++++++++++++++++++
drivers/target/tcm_fc/tfc_io.c | 374 +++++++++++++++++
drivers/target/tcm_fc/tfc_sess.c | 541 +++++++++++++++++++++++++
include/linux/netdevice.h | 4
include/scsi/libfc.h | 8
net/8021q/vlan_dev.c | 14 +
20 files changed, 2767 insertions(+), 18 deletions(-)
create mode 100644 drivers/target/tcm_fc/Kconfig
create mode 100644 drivers/target/tcm_fc/Makefile
create mode 100644 drivers/target/tcm_fc/tcm_fc.h
create mode 100644 drivers/target/tcm_fc/tfc_cmd.c
create mode 100644 drivers/target/tcm_fc/tfc_conf.c
create mode 100644 drivers/target/tcm_fc/tfc_io.c
create mode 100644 drivers/target/tcm_fc/tfc_sess.c
--
Thanks,
-- Kiran P
_______________________________________________
devel mailing list
[email protected]
https://lists.open-fcoe.org/mailman/listinfo/devel