Remove ni from lnet_finalize and kiblnd_txlist_done
input arguments. Also small code cleanup.
Change-Id: I509bfb21629e3dc0b4c80ec083e3953b78fdf874
Signed-off-by: Sergey Cheremencev <sergey.cheremencev@seagate.com>
Seagate-bug-id: MRP-4056
Reviewed-on: https://review.whamcloud.com/25375
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Reviewed-by: Amir Shehata <amir.shehata@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
void lnet_set_reply_msg_len(struct lnet_ni *ni, struct lnet_msg *msg,
unsigned int len);
void lnet_set_reply_msg_len(struct lnet_ni *ni, struct lnet_msg *msg,
unsigned int len);
-void lnet_finalize(struct lnet_ni *ni, struct lnet_msg *msg, int rc);
+void lnet_finalize(struct lnet_msg *msg, int rc);
void lnet_drop_message(struct lnet_ni *ni, int cpt, void *private,
unsigned int nob);
void lnet_drop_message(struct lnet_ni *ni, int cpt, void *private,
unsigned int nob);
* could free up lnet credits, resulting in a call chain back into
* the LND via kgnilnd_send and friends */
* could free up lnet credits, resulting in a call chain back into
* the LND via kgnilnd_send and friends */
- lnet_finalize(ni, lntmsg0, status0);
+ lnet_finalize(lntmsg0, status0);
- lnet_finalize(ni, lntmsg1, status1);
+ lnet_finalize(lntmsg1, status1);
kgnilnd_tx_done(tx, rc);
kgnilnd_nak_rdma(conn, done_type, rc, rxmsg->gnm_u.get.gngm_cookie, ni->ni_nid);
failed_0:
kgnilnd_tx_done(tx, rc);
kgnilnd_nak_rdma(conn, done_type, rc, rxmsg->gnm_u.get.gngm_cookie, ni->ni_nid);
failed_0:
- lnet_finalize(ni, lntmsg, rc);
+ lnet_finalize(lntmsg, rc);
/* someone closed the conn after we copied this out, nuke it */
kgnilnd_consume_rx(rx);
/* someone closed the conn after we copied this out, nuke it */
kgnilnd_consume_rx(rx);
- lnet_finalize(ni, lntmsg, conn->gnc_error);
+ lnet_finalize(lntmsg, conn->gnc_error);
RETURN(0);
}
read_unlock(&kgnilnd_data.kgn_peer_conn_lock);
RETURN(0);
}
read_unlock(&kgnilnd_data.kgn_peer_conn_lock);
&rxmsg[1], 0, mlen);
kgnilnd_consume_rx(rx);
&rxmsg[1], 0, mlen);
kgnilnd_consume_rx(rx);
- lnet_finalize(ni, lntmsg, 0);
+ lnet_finalize(lntmsg, 0);
RETURN(0);
case GNILND_MSG_PUT_REQ:
/* LNET wants to truncate or drop transaction, sending NAK */
if (mlen == 0) {
kgnilnd_consume_rx(rx);
RETURN(0);
case GNILND_MSG_PUT_REQ:
/* LNET wants to truncate or drop transaction, sending NAK */
if (mlen == 0) {
kgnilnd_consume_rx(rx);
- lnet_finalize(ni, lntmsg, 0);
+ lnet_finalize(lntmsg, 0);
/* only error if lntmsg == NULL, otherwise we are just
* short circuiting the rdma process of 0 bytes */
/* only error if lntmsg == NULL, otherwise we are just
* short circuiting the rdma process of 0 bytes */
/* LNET wants to truncate or drop transaction, sending NAK */
if (mlen == 0) {
kgnilnd_consume_rx(rx);
/* LNET wants to truncate or drop transaction, sending NAK */
if (mlen == 0) {
kgnilnd_consume_rx(rx);
- lnet_finalize(ni, lntmsg, 0);
+ lnet_finalize(lntmsg, 0);
/* only error if lntmsg == NULL, otherwise we are just
* short circuiting the rdma process of 0 bytes */
/* only error if lntmsg == NULL, otherwise we are just
* short circuiting the rdma process of 0 bytes */
/* LNET wants to truncate or drop transaction, sending NAK */
if (mlen == 0) {
kgnilnd_consume_rx(rx);
/* LNET wants to truncate or drop transaction, sending NAK */
if (mlen == 0) {
kgnilnd_consume_rx(rx);
- lnet_finalize(ni, lntmsg, 0);
+ lnet_finalize(lntmsg, 0);
/* only error if lntmsg == NULL, otherwise we are just
* short circuiting the rdma process of 0 bytes */
/* only error if lntmsg == NULL, otherwise we are just
* short circuiting the rdma process of 0 bytes */
write_unlock_irqrestore(&kiblnd_data.kib_global_lock, flags);
write_unlock_irqrestore(&kiblnd_data.kib_global_lock, flags);
- kiblnd_txlist_done(ni, &zombies, -EIO);
+ kiblnd_txlist_done(&zombies, -EIO);
void kiblnd_close_conn_locked (kib_conn_t *conn, int error);
void kiblnd_launch_tx(struct lnet_ni *ni, kib_tx_t *tx, lnet_nid_t nid);
void kiblnd_close_conn_locked (kib_conn_t *conn, int error);
void kiblnd_launch_tx(struct lnet_ni *ni, kib_tx_t *tx, lnet_nid_t nid);
-void kiblnd_txlist_done(struct lnet_ni *ni, struct list_head *txlist,
- int status);
+void kiblnd_txlist_done(struct list_head *txlist, int status);
void kiblnd_qp_event(struct ib_event *event, void *arg);
void kiblnd_cq_event(struct ib_event *event, void *arg);
void kiblnd_qp_event(struct ib_event *event, void *arg);
void kiblnd_cq_event(struct ib_event *event, void *arg);
int resid, kib_rdma_desc_t *dstrd, __u64 dstcookie);
static void kiblnd_queue_tx_locked(kib_tx_t *tx, kib_conn_t *conn);
static void kiblnd_queue_tx(kib_tx_t *tx, kib_conn_t *conn);
int resid, kib_rdma_desc_t *dstrd, __u64 dstcookie);
static void kiblnd_queue_tx_locked(kib_tx_t *tx, kib_conn_t *conn);
static void kiblnd_queue_tx(kib_tx_t *tx, kib_conn_t *conn);
-static void kiblnd_unmap_tx(struct lnet_ni *ni, kib_tx_t *tx);
+
+static void kiblnd_unmap_tx(kib_tx_t *tx);
static void kiblnd_check_sends_locked(kib_conn_t *conn);
void
static void kiblnd_check_sends_locked(kib_conn_t *conn);
void
-kiblnd_tx_done(struct lnet_ni *ni, kib_tx_t *tx)
+kiblnd_tx_done(kib_tx_t *tx)
{
struct lnet_msg *lntmsg[2];
{
struct lnet_msg *lntmsg[2];
- kib_net_t *net = ni->ni_data;
LASSERT (!in_interrupt());
LASSERT (!tx->tx_queued); /* mustn't be queued for sending */
LASSERT (tx->tx_sending == 0); /* mustn't be awaiting sent callback */
LASSERT (!tx->tx_waiting); /* mustn't be awaiting peer_ni response */
LASSERT (tx->tx_pool != NULL);
LASSERT (!in_interrupt());
LASSERT (!tx->tx_queued); /* mustn't be queued for sending */
LASSERT (tx->tx_sending == 0); /* mustn't be awaiting sent callback */
LASSERT (!tx->tx_waiting); /* mustn't be awaiting peer_ni response */
LASSERT (tx->tx_pool != NULL);
- kiblnd_unmap_tx(ni, tx);
/* tx may have up to 2 lnet msgs to finalise */
lntmsg[0] = tx->tx_lntmsg[0]; tx->tx_lntmsg[0] = NULL;
/* tx may have up to 2 lnet msgs to finalise */
lntmsg[0] = tx->tx_lntmsg[0]; tx->tx_lntmsg[0] = NULL;
rc = tx->tx_status;
if (tx->tx_conn != NULL) {
rc = tx->tx_status;
if (tx->tx_conn != NULL) {
- LASSERT (ni == tx->tx_conn->ibc_peer->ibp_ni);
-
kiblnd_conn_decref(tx->tx_conn);
tx->tx_conn = NULL;
}
kiblnd_conn_decref(tx->tx_conn);
tx->tx_conn = NULL;
}
if (lntmsg[i] == NULL)
continue;
if (lntmsg[i] == NULL)
continue;
- lnet_finalize(ni, lntmsg[i], rc);
+ lnet_finalize(lntmsg[i], rc);
-kiblnd_txlist_done(struct lnet_ni *ni, struct list_head *txlist, int status)
+kiblnd_txlist_done(struct list_head *txlist, int status)
/* complete now */
tx->tx_waiting = 0;
tx->tx_status = status;
/* complete now */
tx->tx_waiting = 0;
tx->tx_status = status;
- kiblnd_tx_done(ni, tx);
spin_unlock(&conn->ibc_lock);
if (idle)
spin_unlock(&conn->ibc_lock);
if (idle)
- kiblnd_tx_done(ni, tx);
-kiblnd_unmap_tx(struct lnet_ni *ni, kib_tx_t *tx)
+kiblnd_unmap_tx(kib_tx_t *tx)
- kib_net_t *net = ni->ni_data;
-
- LASSERT(net != NULL);
-
- if (net->ibn_fmr_ps != NULL)
+ if (tx->fmr.fmr_pfmr != NULL)
kiblnd_fmr_pool_unmap(&tx->fmr, tx->tx_status);
if (tx->tx_nfrags != 0) {
kiblnd_fmr_pool_unmap(&tx->fmr, tx->tx_status);
if (tx->tx_nfrags != 0) {
* kiblnd_check_sends_locked will queue NOOP again when
* posted NOOPs complete */
spin_unlock(&conn->ibc_lock);
* kiblnd_check_sends_locked will queue NOOP again when
* posted NOOPs complete */
spin_unlock(&conn->ibc_lock);
- kiblnd_tx_done(peer_ni->ibp_ni, tx);
spin_lock(&conn->ibc_lock);
CDEBUG(D_NET, "%s(%d): redundant or enough NOOP\n",
libcfs_nid2str(peer_ni->ibp_nid),
spin_lock(&conn->ibc_lock);
CDEBUG(D_NET, "%s(%d): redundant or enough NOOP\n",
libcfs_nid2str(peer_ni->ibp_nid),
kiblnd_close_conn(conn, rc);
kiblnd_close_conn(conn, rc);
- if (done)
- kiblnd_tx_done(peer_ni->ibp_ni, tx);
+ if (done)
+ kiblnd_tx_done(tx);
spin_lock(&conn->ibc_lock);
spin_lock(&conn->ibc_lock);
kiblnd_check_sends_locked(conn);
spin_unlock(&conn->ibc_lock);
kiblnd_check_sends_locked(conn);
spin_unlock(&conn->ibc_lock);
- if (idle)
- kiblnd_tx_done(conn->ibc_peer->ibp_ni, tx);
+ if (idle)
+ kiblnd_tx_done(tx);
CWARN("Abort reconnection of %s: %s\n",
libcfs_nid2str(peer_ni->ibp_nid), reason);
CWARN("Abort reconnection of %s: %s\n",
libcfs_nid2str(peer_ni->ibp_nid), reason);
- kiblnd_txlist_done(peer_ni->ibp_ni, &txs, -ECONNABORTED);
+ kiblnd_txlist_done(&txs, -ECONNABORTED);
if (tx != NULL) {
tx->tx_status = -EHOSTUNREACH;
tx->tx_waiting = 0;
if (tx != NULL) {
tx->tx_status = -EHOSTUNREACH;
tx->tx_waiting = 0;
- kiblnd_tx_done(ni, tx);
if (rc != 0) {
CERROR("Can't setup GET sink for %s: %d\n",
libcfs_nid2str(target.nid), rc);
if (rc != 0) {
CERROR("Can't setup GET sink for %s: %d\n",
libcfs_nid2str(target.nid), rc);
- kiblnd_tx_done(ni, tx);
kiblnd_init_tx_msg(ni, tx, IBLND_MSG_GET_REQ, nob);
tx->tx_lntmsg[1] = lnet_create_reply_msg(ni, lntmsg);
kiblnd_init_tx_msg(ni, tx, IBLND_MSG_GET_REQ, nob);
tx->tx_lntmsg[1] = lnet_create_reply_msg(ni, lntmsg);
- if (tx->tx_lntmsg[1] == NULL) {
- CERROR("Can't create reply for GET -> %s\n",
- libcfs_nid2str(target.nid));
- kiblnd_tx_done(ni, tx);
- return -EIO;
- }
+ if (tx->tx_lntmsg[1] == NULL) {
+ CERROR("Can't create reply for GET -> %s\n",
+ libcfs_nid2str(target.nid));
+ kiblnd_tx_done(tx);
+ return -EIO;
+ }
tx->tx_lntmsg[0] = lntmsg; /* finalise lntmsg[0,1] on completion */
tx->tx_waiting = 1; /* waiting for GET_DONE */
tx->tx_lntmsg[0] = lntmsg; /* finalise lntmsg[0,1] on completion */
tx->tx_waiting = 1; /* waiting for GET_DONE */
rc = kiblnd_setup_rd_kiov(ni, tx, tx->tx_rd,
payload_niov, payload_kiov,
payload_offset, payload_nob);
rc = kiblnd_setup_rd_kiov(ni, tx, tx->tx_rd,
payload_niov, payload_kiov,
payload_offset, payload_nob);
- if (rc != 0) {
- CERROR("Can't setup PUT src for %s: %d\n",
- libcfs_nid2str(target.nid), rc);
- kiblnd_tx_done(ni, tx);
- return -EIO;
- }
+ if (rc != 0) {
+ CERROR("Can't setup PUT src for %s: %d\n",
+ libcfs_nid2str(target.nid), rc);
+ kiblnd_tx_done(tx);
+ return -EIO;
+ }
ibmsg = tx->tx_msg;
ibmsg->ibm_u.putreq.ibprm_hdr = *hdr;
ibmsg = tx->tx_msg;
ibmsg->ibm_u.putreq.ibprm_hdr = *hdr;
libcfs_nid2str(target.nid), rc);
goto failed_1;
}
libcfs_nid2str(target.nid), rc);
goto failed_1;
}
-
- if (nob == 0) {
- /* No RDMA: local completion may happen now! */
- lnet_finalize(ni, lntmsg, 0);
- } else {
- /* RDMA: lnet_finalize(lntmsg) when it
- * completes */
- tx->tx_lntmsg[0] = lntmsg;
- }
+
+ if (nob == 0) {
+ /* No RDMA: local completion may happen now! */
+ lnet_finalize(lntmsg, 0);
+ } else {
+ /* RDMA: lnet_finalize(lntmsg) when it
+ * completes */
+ tx->tx_lntmsg[0] = lntmsg;
+ }
kiblnd_queue_tx(tx, rx->rx_conn);
return;
failed_1:
kiblnd_queue_tx(tx, rx->rx_conn);
return;
failed_1:
- kiblnd_tx_done(ni, tx);
- lnet_finalize(ni, lntmsg, -EIO);
+ lnet_finalize(lntmsg, -EIO);
kib_msg_t *rxmsg = rx->rx_msg;
kib_conn_t *conn = rx->rx_conn;
kib_tx_t *tx;
kib_msg_t *rxmsg = rx->rx_msg;
kib_conn_t *conn = rx->rx_conn;
kib_tx_t *tx;
int nob;
int post_credit = IBLND_POSTRX_PEER_CREDIT;
int rc = 0;
int nob;
int post_credit = IBLND_POSTRX_PEER_CREDIT;
int rc = 0;
IBLND_MSG_SIZE, rxmsg,
offsetof(kib_msg_t, ibm_u.immediate.ibim_payload),
mlen);
IBLND_MSG_SIZE, rxmsg,
offsetof(kib_msg_t, ibm_u.immediate.ibim_payload),
mlen);
- lnet_finalize (ni, lntmsg, 0);
- break;
+ lnet_finalize(lntmsg, 0);
+ break;
case IBLND_MSG_PUT_REQ: {
kib_msg_t *txmsg;
kib_rdma_desc_t *rd;
case IBLND_MSG_PUT_REQ: {
kib_msg_t *txmsg;
kib_rdma_desc_t *rd;
+ ibprm_cookie = rxmsg->ibm_u.putreq.ibprm_cookie;
- if (mlen == 0) {
- lnet_finalize(ni, lntmsg, 0);
- kiblnd_send_completion(rx->rx_conn, IBLND_MSG_PUT_NAK, 0,
- rxmsg->ibm_u.putreq.ibprm_cookie);
- break;
- }
+ if (mlen == 0) {
+ lnet_finalize(lntmsg, 0);
+ kiblnd_send_completion(rx->rx_conn, IBLND_MSG_PUT_NAK,
+ 0, ibprm_cookie);
+ break;
+ }
tx = kiblnd_get_idle_tx(ni, conn->ibc_peer->ibp_nid);
if (tx == NULL) {
tx = kiblnd_get_idle_tx(ni, conn->ibc_peer->ibp_nid);
if (tx == NULL) {
if (rc != 0) {
CERROR("Can't setup PUT sink for %s: %d\n",
libcfs_nid2str(conn->ibc_peer->ibp_nid), rc);
if (rc != 0) {
CERROR("Can't setup PUT sink for %s: %d\n",
libcfs_nid2str(conn->ibc_peer->ibp_nid), rc);
- kiblnd_tx_done(ni, tx);
/* tell peer_ni it's over */
/* tell peer_ni it's over */
- kiblnd_send_completion(rx->rx_conn, IBLND_MSG_PUT_NAK, rc,
- rxmsg->ibm_u.putreq.ibprm_cookie);
+ kiblnd_send_completion(rx->rx_conn, IBLND_MSG_PUT_NAK,
+ rc, ibprm_cookie);
break;
}
nob = offsetof(kib_putack_msg_t, ibpam_rd.rd_frags[rd->rd_nfrags]);
break;
}
nob = offsetof(kib_putack_msg_t, ibpam_rd.rd_frags[rd->rd_nfrags]);
- txmsg->ibm_u.putack.ibpam_src_cookie = rxmsg->ibm_u.putreq.ibprm_cookie;
+ txmsg->ibm_u.putack.ibpam_src_cookie = ibprm_cookie;
txmsg->ibm_u.putack.ibpam_dst_cookie = tx->tx_cookie;
kiblnd_init_tx_msg(ni, tx, IBLND_MSG_PUT_ACK, nob);
txmsg->ibm_u.putack.ibpam_dst_cookie = tx->tx_cookie;
kiblnd_init_tx_msg(ni, tx, IBLND_MSG_PUT_ACK, nob);
spin_unlock(&conn->ibc_lock);
spin_unlock(&conn->ibc_lock);
- kiblnd_txlist_done(conn->ibc_peer->ibp_ni, &zombies, -ECONNABORTED);
+ kiblnd_txlist_done(&zombies, -ECONNABORTED);
CNETERR("Deleting messages for %s: connection failed\n",
libcfs_nid2str(peer_ni->ibp_nid));
CNETERR("Deleting messages for %s: connection failed\n",
libcfs_nid2str(peer_ni->ibp_nid));
- kiblnd_txlist_done(peer_ni->ibp_ni, &zombies, -EHOSTUNREACH);
+ kiblnd_txlist_done(&zombies, -EHOSTUNREACH);
if (!kiblnd_peer_active(peer_ni) || /* peer_ni has been deleted */
conn->ibc_comms_error != 0) { /* error has happened already */
if (!kiblnd_peer_active(peer_ni) || /* peer_ni has been deleted */
conn->ibc_comms_error != 0) { /* error has happened already */
- struct lnet_ni *ni = peer_ni->ibp_ni;
/* start to shut down connection */
kiblnd_close_conn_locked(conn, -ECONNABORTED);
write_unlock_irqrestore(&kiblnd_data.kib_global_lock, flags);
/* start to shut down connection */
kiblnd_close_conn_locked(conn, -ECONNABORTED);
write_unlock_irqrestore(&kiblnd_data.kib_global_lock, flags);
- kiblnd_txlist_done(ni, &txs, -ECONNABORTED);
+ kiblnd_txlist_done(&txs, -ECONNABORTED);
conn->ksnc_rx_nob_wanted, conn->ksnc_rx_nob_left,
cfs_duration_sec(cfs_time_sub(ktime_get_real_seconds(),
last_rcv)));
conn->ksnc_rx_nob_wanted, conn->ksnc_rx_nob_left,
cfs_duration_sec(cfs_time_sub(ktime_get_real_seconds(),
last_rcv)));
- lnet_finalize (conn->ksnc_peer->ksnp_ni,
- conn->ksnc_cookie, -EIO);
- break;
+ lnet_finalize(conn->ksnc_cookie, -EIO);
+ break;
case SOCKNAL_RX_LNET_HEADER:
if (conn->ksnc_rx_started)
CERROR("Incomplete receive of lnet header from %s, "
case SOCKNAL_RX_LNET_HEADER:
if (conn->ksnc_rx_started)
CERROR("Incomplete receive of lnet header from %s, "
if (ni == NULL && tx->tx_conn != NULL)
ni = tx->tx_conn->ksnc_peer->ksnp_ni;
if (ni == NULL && tx->tx_conn != NULL)
ni = tx->tx_conn->ksnc_peer->ksnp_ni;
- ksocknal_free_tx (tx);
- if (lnetmsg != NULL) /* KSOCK_MSG_NOOP go without lnetmsg */
- lnet_finalize (ni, lnetmsg, rc);
+ ksocknal_free_tx(tx);
+ if (lnetmsg != NULL) /* KSOCK_MSG_NOOP go without lnetmsg */
+ lnet_finalize(lnetmsg, rc);
le64_to_cpu(lhdr->src_nid) != id->nid);
}
le64_to_cpu(lhdr->src_nid) != id->nid);
}
- lnet_finalize(conn->ksnc_peer->ksnp_ni, conn->ksnc_cookie, rc);
+ lnet_finalize(conn->ksnc_cookie, rc);
if (rc != 0) {
ksocknal_new_packet(conn, 0);
if (rc != 0) {
ksocknal_new_packet(conn, 0);
niov, iov, kiov, offset, mlen,
rlen);
if (rc < 0)
niov, iov, kiov, offset, mlen,
rlen);
if (rc < 0)
- lnet_finalize(ni, msg, rc);
+ lnet_finalize(msg, rc);
rc = (ni->ni_net->net_lnd->lnd_send)(ni, priv, msg);
if (rc < 0)
rc = (ni->ni_net->net_lnd->lnd_send)(ni, priv, msg);
if (rc < 0)
- lnet_finalize(ni, msg, rc);
+ lnet_finalize(msg, rc);
CNETERR("Dropping message for %s: peer not alive\n",
libcfs_id2str(msg->msg_target));
if (do_send)
CNETERR("Dropping message for %s: peer not alive\n",
libcfs_id2str(msg->msg_target));
if (do_send)
- lnet_finalize(ni, msg, -EHOSTUNREACH);
+ lnet_finalize(msg, -EHOSTUNREACH);
lnet_net_lock(cpt);
return -EHOSTUNREACH;
lnet_net_lock(cpt);
return -EHOSTUNREACH;
"called on the MD/ME.\n",
libcfs_id2str(msg->msg_target));
if (do_send)
"called on the MD/ME.\n",
libcfs_id2str(msg->msg_target));
if (do_send)
- lnet_finalize(ni, msg, -ECANCELED);
+ lnet_finalize(msg, -ECANCELED);
lnet_net_lock(cpt);
return -ECANCELED;
lnet_net_lock(cpt);
return -ECANCELED;
lnet_ni_recv(msg->msg_rxni, msg->msg_private, NULL,
0, 0, 0, msg->msg_hdr.payload_length);
list_del_init(&msg->msg_list);
lnet_ni_recv(msg->msg_rxni, msg->msg_private, NULL,
0, 0, 0, msg->msg_hdr.payload_length);
list_del_init(&msg->msg_list);
- lnet_finalize(NULL, msg, -ECANCELED);
+ lnet_finalize(msg, -ECANCELED);
libcfs_nid2str(ni->ni_nid),
libcfs_id2str(info.mi_id), rc);
libcfs_nid2str(ni->ni_nid),
libcfs_id2str(info.mi_id), rc);
- lnet_finalize(ni, msg, rc);
+ lnet_finalize(msg, rc);
free_drop:
LASSERT(msg->msg_md == NULL);
free_drop:
LASSERT(msg->msg_md == NULL);
- lnet_finalize(ni, msg, rc);
+ lnet_finalize(msg, rc);
drop:
lnet_drop_message(ni, cpt, private, payload_length);
drop:
lnet_drop_message(ni, cpt, private, payload_length);
* but we still should give error code so lnet_msg_decommit()
* can skip counters operations and other checks.
*/
* but we still should give error code so lnet_msg_decommit()
* can skip counters operations and other checks.
*/
- lnet_finalize(msg->msg_rxni, msg, -ENOENT);
+ lnet_finalize(msg, -ENOENT);
if (rc != 0) {
CNETERR("Error sending PUT to %s: %d\n",
libcfs_id2str(target), rc);
if (rc != 0) {
CNETERR("Error sending PUT to %s: %d\n",
libcfs_id2str(target), rc);
- lnet_finalize(NULL, msg, rc);
+ lnet_finalize(msg, rc);
}
/* completion will be signalled by an event */
}
/* completion will be signalled by an event */
if (rc < 0) {
CNETERR("Error sending GET to %s: %d\n",
libcfs_id2str(target), rc);
if (rc < 0) {
CNETERR("Error sending GET to %s: %d\n",
libcfs_id2str(target), rc);
- lnet_finalize(NULL, msg, rc);
+ lnet_finalize(msg, rc);
}
/* completion will be signalled by an event */
}
/* completion will be signalled by an event */
-lnet_finalize(struct lnet_ni *ni, struct lnet_msg *msg, int status)
+lnet_finalize(struct lnet_msg *msg, int status)
{
struct lnet_msg_container *container;
int my_slot;
{
struct lnet_msg_container *container;
int my_slot;
sendmsg->msg_offset, mlen);
}
sendmsg->msg_offset, mlen);
}
- lnet_finalize(ni, lntmsg, 0);
+ lnet_finalize(lntmsg, 0);
- lnet_finalize(ni, sendmsg, 0);
+ lnet_finalize(sendmsg, 0);
}
lnet_drop_message(ni, cpt, msg->msg_private, msg->msg_len);
}
lnet_drop_message(ni, cpt, msg->msg_private, msg->msg_len);
- lnet_finalize(ni, msg, rc);
+ lnet_finalize(msg, rc);