On 8/21/22 20:16, yanjun.zhu@xxxxxxxxx wrote: > From: Zhu Yanjun <yanjun.zhu@xxxxxxxxx> > > The member variable obj in struct rxe_task is not needed. > So remove it to save memory. > > Signed-off-by: Zhu Yanjun <yanjun.zhu@xxxxxxxxx> > --- > drivers/infiniband/sw/rxe/rxe_qp.c | 6 +++--- > drivers/infiniband/sw/rxe/rxe_task.c | 3 +-- > drivers/infiniband/sw/rxe/rxe_task.h | 3 +-- > 3 files changed, 5 insertions(+), 7 deletions(-) > > diff --git a/drivers/infiniband/sw/rxe/rxe_qp.c b/drivers/infiniband/sw/rxe/rxe_qp.c > index b229052ae91a..ee4f7a4a7e01 100644 > --- a/drivers/infiniband/sw/rxe/rxe_qp.c > +++ b/drivers/infiniband/sw/rxe/rxe_qp.c > @@ -242,9 +242,9 @@ static int rxe_qp_init_req(struct rxe_dev *rxe, struct rxe_qp *qp, > > skb_queue_head_init(&qp->req_pkts); > > - rxe_init_task(rxe, &qp->req.task, qp, > + rxe_init_task(&qp->req.task, qp, > rxe_requester, "req"); > - rxe_init_task(rxe, &qp->comp.task, qp, > + rxe_init_task(&qp->comp.task, qp, > rxe_completer, "comp"); > > qp->qp_timeout_jiffies = 0; /* Can't be set for UD/UC in modify_qp */ > @@ -292,7 +292,7 @@ static int rxe_qp_init_resp(struct rxe_dev *rxe, struct rxe_qp *qp, > > skb_queue_head_init(&qp->resp_pkts); > > - rxe_init_task(rxe, &qp->resp.task, qp, > + rxe_init_task(&qp->resp.task, qp, > rxe_responder, "resp"); > > qp->resp.opcode = OPCODE_NONE; > diff --git a/drivers/infiniband/sw/rxe/rxe_task.c b/drivers/infiniband/sw/rxe/rxe_task.c > index 2248cf33d776..ec2b7de1c497 100644 > --- a/drivers/infiniband/sw/rxe/rxe_task.c > +++ b/drivers/infiniband/sw/rxe/rxe_task.c > @@ -94,10 +94,9 @@ void rxe_do_task(struct tasklet_struct *t) > task->ret = ret; > } > > -int rxe_init_task(void *obj, struct rxe_task *task, > +int rxe_init_task(struct rxe_task *task, > void *arg, int (*func)(void *), char *name) > { > - task->obj = obj; > task->arg = arg; > task->func = func; > snprintf(task->name, sizeof(task->name), "%s", name); > diff --git a/drivers/infiniband/sw/rxe/rxe_task.h b/drivers/infiniband/sw/rxe/rxe_task.h > index 11d183fd3338..7f612a1c68a7 100644 > --- a/drivers/infiniband/sw/rxe/rxe_task.h > +++ b/drivers/infiniband/sw/rxe/rxe_task.h > @@ -19,7 +19,6 @@ enum { > * called again. > */ > struct rxe_task { > - void *obj; > struct tasklet_struct tasklet; > int state; > spinlock_t state_lock; /* spinlock for task state */ > @@ -35,7 +34,7 @@ struct rxe_task { > * arg => parameter to pass to fcn > * func => function to call until it returns != 0 > */ > -int rxe_init_task(void *obj, struct rxe_task *task, > +int rxe_init_task(struct rxe_task *task, > void *arg, int (*func)(void *), char *name); > > /* cleanup task */ Looks OK to me. Not sure why that was ever there. Reviewed-by: Bob Pearson <rpearsonhpe@xxxxxxxxx>