remarkable-linux/include/rdma
Jianxin Xiong d9f8723924 IB/rdmavt: Handle local operations in post send
Some work requests are local operations, such as IB_WR_REG_MR and
IB_WR_LOCAL_INV. They differ from non-local operations in that:

(1) Local operations can be processed immediately without being posted
to the send queue if neither fencing nor completion generation is needed.
However, to ensure correct ordering, once a local operation is posted to
the work queue due to fencing or completion requiement, all subsequent
local operations must also be posted to the work queue until all the
local operations on the work queue have completed.

(2) Local operations don't send packets over the wire and thus don't
need (and shouldn't update) the packet sequence numbers.

Define a new a flag bit for the post send table to identify local
operations.

Add a new field to the QP structure to track the number of local
operations on the send queue to determine if direct processing of new
local operations should be enabled/disabled.

Reviewed-by: Mike Marciniszyn <mike.marciniszyn@intel.com>
Reviewed-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Jianxin Xiong <jianxin.xiong@intel.com>
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
2016-08-02 16:00:58 -04:00
..
ib.h IB/security: Restrict use of the write() interface 2016-04-28 12:03:16 -04:00
ib_addr.h net: rdma: use __ethtool_get_ksettings 2016-02-25 22:06:46 -05:00
ib_cache.h IB/core: Add gid_type to gid attribute 2015-12-23 10:35:10 -05:00
ib_cm.h IB/cm: Remove compare_data checks 2015-08-30 15:48:24 -04:00
ib_fmr_pool.h
ib_mad.h IB/core: Introduce capabilitymask2 field in ClassPortInfo mad 2016-05-25 15:39:02 -04:00
ib_marshall.h
ib_pack.h ib_pack.h: Add opcode definition for send with invalidate 2016-05-13 19:39:19 -04:00
ib_pma.h IB/core: Display extended counter set if available 2015-12-23 15:58:30 -05:00
ib_sa.h IB/SA Agent: Add support for SA agent get ClassPortInfo 2016-05-25 15:39:02 -04:00
ib_smi.h IB/core: Move SM class defines from ib_mad.h to ib_smi.h 2015-09-03 15:50:32 -04:00
ib_umem.h IB/core: Add support for on demand paging regions 2014-12-15 18:13:36 -08:00
ib_umem_odp.h IB/core: Implement support for MMU notifiers regarding on demand paging regions 2014-12-15 18:13:36 -08:00
ib_verbs.h IB/core: Make all casts in ib_device_cap_flags enum consistent 2016-06-07 09:50:55 -04:00
iw_cm.h iwcm: common code for port mapper 2016-03-16 13:47:52 -04:00
iw_portmap.h RDMA/core: Enable the iWarp Port Mapper to provide the actual address of the connecting peer to its clients 2015-05-05 09:18:01 -04:00
mr_pool.h IB/core: add a simple MR pool 2016-05-13 13:37:18 -04:00
opa_port_info.h IB/hfi1: Clean up port state structure definition 2016-08-02 12:00:54 -04:00
opa_smi.h IB/core: Add core header changes needed for OPA 2015-08-28 22:54:50 -04:00
rdma_cm.h IB/core, cma: Make __attribute_const__ declarations sparse-friendly 2015-10-30 17:57:49 -04:00
rdma_cm_ib.h
rdma_netlink.h IB/core: Add rdma netlink helper functions 2015-08-30 18:12:25 -04:00
rdma_vt.h IB/rdmavt: Add mechanism to invalidate MR keys 2016-08-02 16:00:58 -04:00
rdmavt_cq.h IB/rdmavt: Add completion queue functions 2016-03-10 20:37:24 -05:00
rdmavt_mr.h IB/rdmavt: Add mechanism to invalidate MR keys 2016-08-02 16:00:58 -04:00
rdmavt_qp.h IB/rdmavt: Handle local operations in post send 2016-08-02 16:00:58 -04:00
rw.h IB/core: add RW API support for signature MRs 2016-05-13 13:37:20 -04:00