+++ /dev/null
-From b8ff2564c8451779f2892756c107f0a5f829342d Mon Sep 17 00:00:00 2001
-From: Vipul Pandya <vipul@chelsio.com>
-Date: Mon, 7 May 2012 12:43:41 +0530
-Subject: [PATCH] iw_cxgb3/iw_cxgb4: Enable header file inclusion with absolute path
-
-iw_cxgb3/iw_cxgb4 driver includes header files of cxgb3/cxgb4 drivers
-respectively. OFED build environment is not able to find the header files
-if absolute path is not given.
-
-Signed-off-by: Vipul Pandya <vipul@chelsio.com>
----
- drivers/infiniband/hw/cxgb3/Makefile | 2 +-
- drivers/infiniband/hw/cxgb4/Makefile | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/infiniband/hw/cxgb3/Makefile b/drivers/infiniband/hw/cxgb3/Makefile
-index 2761364..c780a7a 100644
---- a/drivers/infiniband/hw/cxgb3/Makefile
-+++ b/drivers/infiniband/hw/cxgb3/Makefile
-@@ -1,4 +1,4 @@
--ccflags-y := -Idrivers/net/ethernet/chelsio/cxgb3
-+ccflags-y := -I$(CWD)/drivers/net/ethernet/chelsio/cxgb3
-
- obj-$(CONFIG_INFINIBAND_CXGB3) += iw_cxgb3.o
-
-diff --git a/drivers/infiniband/hw/cxgb4/Makefile b/drivers/infiniband/hw/cxgb4/Makefile
-index 46b878c..b26d54c 100644
---- a/drivers/infiniband/hw/cxgb4/Makefile
-+++ b/drivers/infiniband/hw/cxgb4/Makefile
-@@ -1,4 +1,4 @@
--ccflags-y := -Idrivers/net/ethernet/chelsio/cxgb4
-+ccflags-y := -I$(CWD)/drivers/net/ethernet/chelsio/cxgb4
-
- obj-$(CONFIG_INFINIBAND_CXGB4) += iw_cxgb4.o
-
---
-1.7.0.4
-
+++ /dev/null
-IB/srp: backport queue command to 2.6.37 and before
-
-queuecommand changed in 2.6.37 and again before that.
-
-Add in KERNEL_VERSION aware changes to detect the
-kernel differences.
-
-Signed-off-by: Mike Marciniszyn <mike.marciniszyn@intel.com>
-diff -rup a/drivers/infiniband/ulp/srp/ib_srp.c b/drivers/infiniband/ulp/srp/ib_srp.c
---- a/drivers/infiniband/ulp/srp/ib_srp.c 2012-05-29 13:39:21.000000000 -0400
-+++ b/drivers/infiniband/ulp/srp/ib_srp.c 2012-05-29 14:12:57.000000000 -0400
-@@ -1236,9 +1236,21 @@ static void srp_send_completion(struct i
- }
- }
-
-+#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,37))
- static int srp_queuecommand(struct Scsi_Host *shost, struct scsi_cmnd *scmnd)
-+#elif (LINUX_VERSION_CODE == KERNEL_VERSION(2,6,37))
-+static int srp_queuecommand_lck(struct scsi_cmnd *scmnd,
-+ void (*done)(struct scsi_cmnd *))
-+#else
-+static int srp_queuecommand(struct scsi_cmnd *scmnd,
-+ void (*done)(struct scsi_cmnd *))
-+#endif
- {
-+#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,37))
- struct srp_target_port *target = host_to_target(shost);
-+#else
-+ struct srp_target_port *target = host_to_target(scmnd->device->host);
-+#endif
- struct srp_request *req;
- struct srp_iu *iu;
- struct srp_cmd *cmd;
-@@ -1252,7 +1264,11 @@ static int srp_queuecommand(struct Scsi_
- if (target->state == SRP_TARGET_DEAD ||
- target->state == SRP_TARGET_REMOVED) {
- scmnd->result = DID_BAD_TARGET << 16;
-+#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,37))
- scmnd->scsi_done(scmnd);
-+#else
-+ done(scmnd);
-+#endif
- return 0;
- }
-
-@@ -1269,6 +1285,9 @@ static int srp_queuecommand(struct Scsi_
- ib_dma_sync_single_for_cpu(dev, iu->dma, target->max_iu_len,
- DMA_TO_DEVICE);
-
-+#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,37))
-+ scmnd->scsi_done = done;
-+#endif
- scmnd->result = 0;
- scmnd->host_scribble = (void *) req;
-
-@@ -1316,6 +1335,10 @@ err:
- return SCSI_MLQUEUE_HOST_BUSY;
- }
-
-+#if (LINUX_VERSION_CODE == KERNEL_VERSION(2,6,37))
-+static DEF_SCSI_QCMD(srp_queuecommand)
-+#endif
-+
- static int srp_alloc_iu_bufs(struct srp_target_port *target)
- {
- int i;
+++ /dev/null
-Set a reject flag, when sending MPA reject message to inform the peer
-that the application has rejected the connection.
-
-Signed-off-by: Tatyana Nikolova <Tatyana.E.Nikolova@intel.com>
-Signed-off-by: Faisal Latif <Faisal.Latif@intel.com>
----
-
-diff --git a/drivers/infiniband/hw/nes/nes_cm.c b/drivers/infiniband/hw/nes/nes_cm.c
-index 47713f2..53c7e32 100644
---- a/drivers/infiniband/hw/nes/nes_cm.c
-+++ b/drivers/infiniband/hw/nes/nes_cm.c
-@@ -233,6 +233,7 @@ static int send_mpa_reject(struct nes_cm_node *cm_node)
- u8 *start_ptr = &start_addr;
- u8 **start_buff = &start_ptr;
- u16 buff_len = 0;
-+ struct ietf_mpa_v1 *mpa_frame;
-
- skb = dev_alloc_skb(MAX_CM_BUFFER);
- if (!skb) {
-@@ -242,6 +243,8 @@ static int send_mpa_reject(struct nes_cm_node *cm_node)
-
- /* send an MPA reject frame */
- cm_build_mpa_frame(cm_node, start_buff, &buff_len, NULL, MPA_KEY_REPLY);
-+ mpa_frame = (struct ietf_mpa_v1 *)*start_buff;
-+ mpa_frame->flags |= IETF_MPA_FLAGS_REJECT;
- form_cm_frame(skb, cm_node, NULL, 0, *start_buff, buff_len, SET_ACK | SET_FIN);
-
- cm_node->state = NES_CM_STATE_FIN_WAIT1;
---
-1.7.1
-
+++ /dev/null
-Fix for reset which happens right after sending a terminate message.
-Terminate timer is not deleted when the connection is closed.
-
-Signed-off-by: Tatyana Nikolova <Tatyana.E.Nikolova@intel.com>
-Signed-off-by: Faisal Latif <Faisal.Latif@intel.com>
----
-
-diff --git a/drivers/infiniband/hw/nes/nes_cm.c b/drivers/infiniband/hw/nes/nes_cm.c
-index fc050aa..793ccd6 100644
---- a/drivers/infiniband/hw/nes/nes_cm.c
-+++ b/drivers/infiniband/hw/nes/nes_cm.c
-@@ -2841,6 +2841,7 @@ static int nes_cm_disconn_true(struct nes_qp *nesqp)
- issue_disconn = 1;
- issue_close = 1;
- nesqp->cm_id = NULL;
-+ del_timer(&nesqp->terminate_timer);
- if (nesqp->flush_issued == 0) {
- nesqp->flush_issued = 1;
- issue_flush = 1;
-diff --git a/drivers/infiniband/hw/nes/nes_hw.c b/drivers/infiniband/hw/nes/nes_hw.c
-index 355786c..5bcd645 100644
---- a/drivers/infiniband/hw/nes/nes_hw.c
-+++ b/drivers/infiniband/hw/nes/nes_hw.c
-@@ -3619,10 +3619,6 @@ static void nes_process_iwarp_aeqe(struct nes_device *nesdev,
- }
- break;
- case NES_AEQE_AEID_LLP_CLOSE_COMPLETE:
-- if (nesqp->term_flags) {
-- nes_terminate_done(nesqp, 0);
-- return;
-- }
- spin_lock_irqsave(&nesqp->lock, flags);
- nesqp->hw_iwarp_state = iwarp_state;
- nesqp->hw_tcp_state = tcp_state;
---
-1.7.1
-
+++ /dev/null
-Fix for ibqp event handler in the case it was NULL (not initialized by ULP).
-
-Signed-off-by: Tatyana Nikolova <Tatyana.E.Nikolova@intel.com>
-Signed-off-by: Donald Wood <Donald.E.Wood@intel.com>
----
- drivers/infiniband/hw/nes/nes_cm.c | 3 ++-
- 1 files changed, 2 insertions(+), 1 deletions(-)
-
-diff --git a/drivers/infiniband/hw/nes/nes_cm.c b/drivers/infiniband/hw/nes/nes_cm.c
-index da2c67d..a9899b1 100644
---- a/drivers/infiniband/hw/nes/nes_cm.c
-+++ b/drivers/infiniband/hw/nes/nes_cm.c
-@@ -2878,7 +2878,8 @@ static int nes_cm_disconn_true(struct nes_qp *nesqp)
- ibevent.device = nesqp->ibqp.device;
- ibevent.event = nesqp->terminate_eventtype;
- ibevent.element.qp = &nesqp->ibqp;
-- nesqp->ibqp.event_handler(&ibevent, nesqp->ibqp.qp_context);
-+ if (nesqp->ibqp.event_handler)
-+ nesqp->ibqp.event_handler(&ibevent, nesqp->ibqp.qp_context);
- }
- }
-
---
-1.7.1
-
+++ /dev/null
-Set ORD size to be at least one in order to accommodate RDMA READ Request message.
-
-Signed-off-by: Tatyana Nikolova <Tatyana.E.Nikolova@intel.com>
-Signed-off-by: Donald Wood <Donald.E.Wood@intel.com>
----
- drivers/infiniband/hw/nes/nes_cm.c | 4 ++++
- 1 files changed, 4 insertions(+), 0 deletions(-)
-
-diff --git a/drivers/infiniband/hw/nes/nes_cm.c b/drivers/infiniband/hw/nes/nes_cm.c
-index da2c67d..7cdcefd 100644
---- a/drivers/infiniband/hw/nes/nes_cm.c
-+++ b/drivers/infiniband/hw/nes/nes_cm.c
-@@ -3315,6 +3315,10 @@ int nes_connect(struct iw_cm_id *cm_id, struct iw_cm_conn_param *conn_param)
-
- nesqp->private_data_len = conn_param->private_data_len;
- nesqp->nesqp_context->ird_ord_sizes |= cpu_to_le32((u32)conn_param->ord);
-+ /* space for rdma0 read msg*/
-+ if (conn_param->ord == 0)
-+ nesqp->nesqp_context->ird_ord_sizes |= cpu_to_le32(1);
-+
- nes_debug(NES_DBG_CM, "requested ord = 0x%08X.\n", (u32)conn_param->ord);
- nes_debug(NES_DBG_CM, "mpa private data len =%u\n",
- conn_param->private_data_len);
---
-1.7.1
-