RDMA/rxe: Remove qp->comp.state
The rxe driver has four different QP state variables, qp->attr.qp_state, qp->req.state, qp->comp.state, and qp->resp.state. All of these basically carry the same information. This patch replaces uses of qp->comp.state by qp->attr.qp_state. This is the second of three patches which will remove all but the qp->attr.qp_state variable. This will bring the driver closer to the IBA description. Link: https://lore.kernel.org/r/20230405042611.6467-2-rpearsonhpe@gmail.com Signed-off-by: Bob Pearson <rpearsonhpe@gmail.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
This commit is contained in:
parent
a588429a66
commit
f55efc2ed2
@ -619,10 +619,10 @@ int rxe_completer(struct rxe_qp *qp)
|
||||
enum comp_state state;
|
||||
int ret;
|
||||
|
||||
if (!qp->valid || qp->comp.state == QP_STATE_ERROR ||
|
||||
qp->comp.state == QP_STATE_RESET) {
|
||||
bool notify = qp->valid &&
|
||||
(qp->comp.state == QP_STATE_ERROR);
|
||||
if (!qp->valid || qp_state(qp) == IB_QPS_ERR ||
|
||||
qp_state(qp) == IB_QPS_RESET) {
|
||||
bool notify = qp->valid && (qp_state(qp) == IB_QPS_ERR);
|
||||
|
||||
drain_resp_pkts(qp);
|
||||
flush_send_queue(qp, notify);
|
||||
goto exit;
|
||||
|
@ -232,7 +232,6 @@ static int rxe_qp_init_req(struct rxe_dev *rxe, struct rxe_qp *qp,
|
||||
QUEUE_TYPE_FROM_CLIENT);
|
||||
|
||||
qp->req.state = QP_STATE_RESET;
|
||||
qp->comp.state = QP_STATE_RESET;
|
||||
qp->req.opcode = -1;
|
||||
qp->comp.opcode = -1;
|
||||
|
||||
@ -477,7 +476,6 @@ static void rxe_qp_reset(struct rxe_qp *qp)
|
||||
|
||||
/* move qp to the reset state */
|
||||
qp->req.state = QP_STATE_RESET;
|
||||
qp->comp.state = QP_STATE_RESET;
|
||||
|
||||
/* drain work and packet queuesc */
|
||||
rxe_requester(qp);
|
||||
@ -530,7 +528,6 @@ static void rxe_qp_drain(struct rxe_qp *qp)
|
||||
void rxe_qp_error(struct rxe_qp *qp)
|
||||
{
|
||||
qp->req.state = QP_STATE_ERROR;
|
||||
qp->comp.state = QP_STATE_ERROR;
|
||||
qp->attr.qp_state = IB_QPS_ERR;
|
||||
|
||||
/* drain work and packet queues */
|
||||
@ -660,7 +657,6 @@ int rxe_qp_from_attr(struct rxe_qp *qp, struct ib_qp_attr *attr, int mask,
|
||||
case IB_QPS_INIT:
|
||||
rxe_dbg_qp(qp, "state -> INIT\n");
|
||||
qp->req.state = QP_STATE_INIT;
|
||||
qp->comp.state = QP_STATE_INIT;
|
||||
break;
|
||||
|
||||
case IB_QPS_RTR:
|
||||
@ -670,7 +666,6 @@ int rxe_qp_from_attr(struct rxe_qp *qp, struct ib_qp_attr *attr, int mask,
|
||||
case IB_QPS_RTS:
|
||||
rxe_dbg_qp(qp, "state -> RTS\n");
|
||||
qp->req.state = QP_STATE_READY;
|
||||
qp->comp.state = QP_STATE_READY;
|
||||
break;
|
||||
|
||||
case IB_QPS_SQD:
|
||||
|
@ -127,7 +127,6 @@ struct rxe_req_info {
|
||||
};
|
||||
|
||||
struct rxe_comp_info {
|
||||
enum rxe_qp_state state;
|
||||
u32 psn;
|
||||
int opcode;
|
||||
int timeout;
|
||||
|
Loading…
x
Reference in New Issue
Block a user