Commit 2e3bbe46 authored by Bart Van Assche's avatar Bart Van Assche Committed by Jason Gunthorpe

net/smc: Simplify ib_post_(send|recv|srq_recv)() calls

Instead of declaring and passing a dummy 'bad_wr' pointer, pass NULL
as third argument to ib_post_(send|recv|srq_recv)().
Signed-off-by: default avatarBart Van Assche <bart.vanassche@wdc.com>
Acked-by: default avatarUrsula Braun <ubraun@linux.ibm.com>
Signed-off-by: default avatarJason Gunthorpe <jgg@mellanox.com>
parent 12c36dcf
...@@ -255,7 +255,6 @@ static int smc_tx_rdma_write(struct smc_connection *conn, int peer_rmbe_offset, ...@@ -255,7 +255,6 @@ static int smc_tx_rdma_write(struct smc_connection *conn, int peer_rmbe_offset,
int num_sges, struct ib_sge sges[]) int num_sges, struct ib_sge sges[])
{ {
struct smc_link_group *lgr = conn->lgr; struct smc_link_group *lgr = conn->lgr;
struct ib_send_wr *failed_wr = NULL;
struct ib_rdma_wr rdma_wr; struct ib_rdma_wr rdma_wr;
struct smc_link *link; struct smc_link *link;
int rc; int rc;
...@@ -273,7 +272,7 @@ static int smc_tx_rdma_write(struct smc_connection *conn, int peer_rmbe_offset, ...@@ -273,7 +272,7 @@ static int smc_tx_rdma_write(struct smc_connection *conn, int peer_rmbe_offset,
/* offset within RMBE */ /* offset within RMBE */
peer_rmbe_offset; peer_rmbe_offset;
rdma_wr.rkey = lgr->rtokens[conn->rtoken_idx][SMC_SINGLE_LINK].rkey; rdma_wr.rkey = lgr->rtokens[conn->rtoken_idx][SMC_SINGLE_LINK].rkey;
rc = ib_post_send(link->roce_qp, &rdma_wr.wr, &failed_wr); rc = ib_post_send(link->roce_qp, &rdma_wr.wr, NULL);
if (rc) { if (rc) {
conn->local_tx_ctrl.conn_state_flags.peer_conn_abort = 1; conn->local_tx_ctrl.conn_state_flags.peer_conn_abort = 1;
smc_lgr_terminate(lgr); smc_lgr_terminate(lgr);
......
...@@ -240,15 +240,13 @@ int smc_wr_tx_put_slot(struct smc_link *link, ...@@ -240,15 +240,13 @@ int smc_wr_tx_put_slot(struct smc_link *link,
*/ */
int smc_wr_tx_send(struct smc_link *link, struct smc_wr_tx_pend_priv *priv) int smc_wr_tx_send(struct smc_link *link, struct smc_wr_tx_pend_priv *priv)
{ {
struct ib_send_wr *failed_wr = NULL;
struct smc_wr_tx_pend *pend; struct smc_wr_tx_pend *pend;
int rc; int rc;
ib_req_notify_cq(link->smcibdev->roce_cq_send, ib_req_notify_cq(link->smcibdev->roce_cq_send,
IB_CQ_NEXT_COMP | IB_CQ_REPORT_MISSED_EVENTS); IB_CQ_NEXT_COMP | IB_CQ_REPORT_MISSED_EVENTS);
pend = container_of(priv, struct smc_wr_tx_pend, priv); pend = container_of(priv, struct smc_wr_tx_pend, priv);
rc = ib_post_send(link->roce_qp, &link->wr_tx_ibs[pend->idx], rc = ib_post_send(link->roce_qp, &link->wr_tx_ibs[pend->idx], NULL);
&failed_wr);
if (rc) { if (rc) {
struct smc_link_group *lgr = struct smc_link_group *lgr =
container_of(link, struct smc_link_group, container_of(link, struct smc_link_group,
...@@ -263,7 +261,6 @@ int smc_wr_tx_send(struct smc_link *link, struct smc_wr_tx_pend_priv *priv) ...@@ -263,7 +261,6 @@ int smc_wr_tx_send(struct smc_link *link, struct smc_wr_tx_pend_priv *priv)
/* Register a memory region and wait for result. */ /* Register a memory region and wait for result. */
int smc_wr_reg_send(struct smc_link *link, struct ib_mr *mr) int smc_wr_reg_send(struct smc_link *link, struct ib_mr *mr)
{ {
struct ib_send_wr *failed_wr = NULL;
int rc; int rc;
ib_req_notify_cq(link->smcibdev->roce_cq_send, ib_req_notify_cq(link->smcibdev->roce_cq_send,
...@@ -272,8 +269,7 @@ int smc_wr_reg_send(struct smc_link *link, struct ib_mr *mr) ...@@ -272,8 +269,7 @@ int smc_wr_reg_send(struct smc_link *link, struct ib_mr *mr)
link->wr_reg.wr.wr_id = (u64)(uintptr_t)mr; link->wr_reg.wr.wr_id = (u64)(uintptr_t)mr;
link->wr_reg.mr = mr; link->wr_reg.mr = mr;
link->wr_reg.key = mr->rkey; link->wr_reg.key = mr->rkey;
failed_wr = &link->wr_reg.wr; rc = ib_post_send(link->roce_qp, &link->wr_reg.wr, NULL);
rc = ib_post_send(link->roce_qp, &link->wr_reg.wr, &failed_wr);
if (rc) if (rc)
return rc; return rc;
......
...@@ -63,7 +63,6 @@ static inline void smc_wr_tx_set_wr_id(atomic_long_t *wr_tx_id, long val) ...@@ -63,7 +63,6 @@ static inline void smc_wr_tx_set_wr_id(atomic_long_t *wr_tx_id, long val)
/* post a new receive work request to fill a completed old work request entry */ /* post a new receive work request to fill a completed old work request entry */
static inline int smc_wr_rx_post(struct smc_link *link) static inline int smc_wr_rx_post(struct smc_link *link)
{ {
struct ib_recv_wr *bad_recv_wr = NULL;
int rc; int rc;
u64 wr_id, temp_wr_id; u64 wr_id, temp_wr_id;
u32 index; u32 index;
...@@ -72,7 +71,7 @@ static inline int smc_wr_rx_post(struct smc_link *link) ...@@ -72,7 +71,7 @@ static inline int smc_wr_rx_post(struct smc_link *link)
temp_wr_id = wr_id; temp_wr_id = wr_id;
index = do_div(temp_wr_id, link->wr_rx_cnt); index = do_div(temp_wr_id, link->wr_rx_cnt);
link->wr_rx_ibs[index].wr_id = wr_id; link->wr_rx_ibs[index].wr_id = wr_id;
rc = ib_post_recv(link->roce_qp, &link->wr_rx_ibs[index], &bad_recv_wr); rc = ib_post_recv(link->roce_qp, &link->wr_rx_ibs[index], NULL);
return rc; return rc;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment