Lines Matching defs:permit

64 	struct rtrs_permit *permit;
80 permit = get_permit(clt, bit);
81 WARN_ON(permit->mem_id != bit);
82 permit->cpu_id = raw_smp_processor_id();
83 permit->con_type = con_type;
85 return permit;
89 struct rtrs_permit *permit)
91 clear_bit_unlock(permit->mem_id, clt->permits_map);
95 * rtrs_clt_get_permit() - allocates permit for future RDMA operation
97 * @con_type: Type of connection to use with the permit
101 * Allocates permit for the following RDMA operation. Permit is used
112 struct rtrs_permit *permit;
115 permit = __rtrs_get_permit(clt, con_type);
116 if (likely(permit) || !can_wait)
117 return permit;
122 permit = __rtrs_get_permit(clt, con_type);
123 if (likely(permit))
131 return permit;
136 * rtrs_clt_put_permit() - puts allocated permit
138 * @permit: Permit to be freed
143 void rtrs_clt_put_permit(struct rtrs_clt *clt, struct rtrs_permit *permit)
145 if (WARN_ON(!test_bit(permit->mem_id, clt->permits_map)))
148 __rtrs_put_permit(clt, permit);
162 void *rtrs_permit_to_pdu(struct rtrs_permit *permit)
164 return permit + 1;
169 * rtrs_permit_to_clt_con() - returns RDMA connection pointer by the permit
171 * @permit: permit for the allocation of the RDMA buffer
178 struct rtrs_permit *permit)
182 if (likely(permit->con_type == RTRS_IO_CON))
183 id = (permit->cpu_id % (sess->s.con_num - 1)) + 1;
871 * @permit: permit for allocation of RDMA remote buffer
883 struct rtrs_permit *permit, void *priv,
891 req->permit = permit;
899 req->con = rtrs_permit_to_clt_con(sess, permit);
915 struct rtrs_permit *permit, void *priv,
922 req = &sess->reqs[permit->mem_id];
923 rtrs_clt_init_req(req, sess, conf, permit, priv, vec, usr_len,
938 req = &alive_sess->reqs[fail_req->permit->mem_id];
939 rtrs_clt_init_req(req, alive_sess, fail_req->conf, fail_req->permit,
1016 imm = req->permit->mem_off + req->data_len + req->usr_len;
1018 buf_id = req->permit->mem_id;
1136 imm = req->permit->mem_off + req->data_len + req->usr_len;
1138 buf_id = req->permit->mem_id;
1313 struct rtrs_permit *permit;
1315 permit = get_permit(clt, i);
1316 permit->mem_id = i;
1317 permit->mem_off = i << (MAX_IMM_PAYL_BITS - chunk_bits);
2651 * @pdu_sz: Size of extra payload which can be accessed after permit allocation.
2841 * @permit: Preallocated permit
2860 struct rtrs_clt *clt, struct rtrs_permit *permit,
2899 req = rtrs_clt_get_req(sess, ops->conf_fn, permit, ops->priv,