Commit 179f912a authored by Jon Mason's avatar Jon Mason

NTB: ntb_process_tx error path bug

The transmit overrun avoidance error path in ntb_process_tx accidentally
swapped the first two values being passed to the tx_handler client.
This could result in crashes in the ntb_netdev (or other out-of-tree NTB
clients).
Reported-by: default avatarAlex Depoutovitch <alex@pernixdata.com>
Signed-off-by: default avatarJon Mason <jdmason@kudzu.us>
parent afd2ff9b
...@@ -1532,7 +1532,7 @@ static int ntb_process_tx(struct ntb_transport_qp *qp, ...@@ -1532,7 +1532,7 @@ static int ntb_process_tx(struct ntb_transport_qp *qp,
if (entry->len > qp->tx_max_frame - sizeof(struct ntb_payload_header)) { if (entry->len > qp->tx_max_frame - sizeof(struct ntb_payload_header)) {
if (qp->tx_handler) if (qp->tx_handler)
qp->tx_handler(qp->cb_data, qp, NULL, -EIO); qp->tx_handler(qp, qp->cb_data, NULL, -EIO);
ntb_list_add(&qp->ntb_tx_free_q_lock, &entry->entry, ntb_list_add(&qp->ntb_tx_free_q_lock, &entry->entry,
&qp->tx_free_q); &qp->tx_free_q);
......
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