diff options
author | Kalderon, Michal <Michal.Kalderon@cavium.com> | 2017-07-26 13:41:55 +0200 |
---|---|---|
committer | Doug Ledford <dledford@redhat.com> | 2017-08-18 18:26:38 +0200 |
commit | de0089e692a92ce5180eec6a79f1f79153e3c669 (patch) | |
tree | fecb49ed3138f2ebf5cac74f3626578e07858bd2 /drivers/infiniband/hw/qedr/qedr.h | |
parent | RDMA/qedr: Add support for read with invalidate, supported in iWARP (diff) | |
download | linux-de0089e692a92ce5180eec6a79f1f79153e3c669.tar.xz linux-de0089e692a92ce5180eec6a79f1f79153e3c669.zip |
RDMA/qedr: Add iWARP connection management qp related callbacks
This patch implements the following iWARP callbacks:
qp_add_ref
qp_rem_ref
get_qp
Signed-off-by: Michal Kalderon <Michal.Kalderon@cavium.com>
Signed-off-by: Ram Amrani <Ram.Amrani@cavium.com>
Signed-off-by: Ariel Elior <Ariel.Elior@cavium.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
Diffstat (limited to 'drivers/infiniband/hw/qedr/qedr.h')
-rw-r--r-- | drivers/infiniband/hw/qedr/qedr.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/infiniband/hw/qedr/qedr.h b/drivers/infiniband/hw/qedr/qedr.h index 0c0a39ad297b..5dd82d1651be 100644 --- a/drivers/infiniband/hw/qedr/qedr.h +++ b/drivers/infiniband/hw/qedr/qedr.h @@ -33,6 +33,7 @@ #define __QEDR_H__ #include <linux/pci.h> +#include <linux/idr.h> #include <rdma/ib_addr.h> #include <linux/qed/qed_if.h> #include <linux/qed/qed_chain.h> @@ -164,7 +165,8 @@ struct qedr_dev { struct qedr_cq *gsi_rqcq; struct qedr_qp *gsi_qp; enum qed_rdma_type rdma_type; - + spinlock_t idr_lock; /* Protect qpidr data-structure */ + struct idr qpidr; unsigned long enet_state; }; @@ -399,6 +401,7 @@ struct qedr_qp { /* Relevant to qps created from user space only (applications) */ struct qedr_userq usq; struct qedr_userq urq; + atomic_t refcnt; }; struct qedr_ah { |