mirror of https://gitee.com/openkylin/linux.git
IB/hfi1: Move iowait_init() to priv allocate
The call is misplaced in the reset calldown function
and causes issues with lockdep assertions that are to
be added.
Fixes: Commit a2c2d60895
("staging/rdma/hfi1: Remove create_qp functionality")
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Reviewed-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Mike Marciniszyn <mike.marciniszyn@intel.com>
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
This commit is contained in:
parent
eefa1d8961
commit
5a648dfad0
|
@ -806,6 +806,13 @@ void *qp_priv_alloc(struct rvt_dev_info *rdi, struct rvt_qp *qp,
|
|||
kfree(priv);
|
||||
return ERR_PTR(-ENOMEM);
|
||||
}
|
||||
iowait_init(
|
||||
&priv->s_iowait,
|
||||
1,
|
||||
_hfi1_do_send,
|
||||
iowait_sleep,
|
||||
iowait_wakeup,
|
||||
iowait_sdma_drained);
|
||||
setup_timer(&priv->s_rnr_timer, hfi1_rc_rnr_retry, (unsigned long)qp);
|
||||
qp->s_timer.function = hfi1_rc_timeout;
|
||||
return priv;
|
||||
|
@ -871,13 +878,6 @@ void notify_qp_reset(struct rvt_qp *qp)
|
|||
{
|
||||
struct hfi1_qp_priv *priv = qp->priv;
|
||||
|
||||
iowait_init(
|
||||
&priv->s_iowait,
|
||||
1,
|
||||
_hfi1_do_send,
|
||||
iowait_sleep,
|
||||
iowait_wakeup,
|
||||
iowait_sdma_drained);
|
||||
priv->r_adefered = 0;
|
||||
clear_ahg(qp);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue