|
@@ -55,7 +55,7 @@ void mlx4_qp_event(struct mlx4_dev *dev, u32 qpn, int event_type)
|
|
|
|
|
|
qp = __mlx4_qp_lookup(dev, qpn);
|
|
|
if (qp)
|
|
|
- atomic_inc(&qp->refcount);
|
|
|
+ refcount_inc(&qp->refcount);
|
|
|
|
|
|
spin_unlock(&qp_table->lock);
|
|
|
|
|
@@ -66,7 +66,7 @@ void mlx4_qp_event(struct mlx4_dev *dev, u32 qpn, int event_type)
|
|
|
|
|
|
qp->event(qp, event_type);
|
|
|
|
|
|
- if (atomic_dec_and_test(&qp->refcount))
|
|
|
+ if (refcount_dec_and_test(&qp->refcount))
|
|
|
complete(&qp->free);
|
|
|
}
|
|
|
|
|
@@ -420,7 +420,7 @@ int mlx4_qp_alloc(struct mlx4_dev *dev, int qpn, struct mlx4_qp *qp)
|
|
|
if (err)
|
|
|
goto err_icm;
|
|
|
|
|
|
- atomic_set(&qp->refcount, 1);
|
|
|
+ refcount_set(&qp->refcount, 1);
|
|
|
init_completion(&qp->free);
|
|
|
|
|
|
return 0;
|
|
@@ -520,7 +520,7 @@ EXPORT_SYMBOL_GPL(mlx4_qp_remove);
|
|
|
|
|
|
void mlx4_qp_free(struct mlx4_dev *dev, struct mlx4_qp *qp)
|
|
|
{
|
|
|
- if (atomic_dec_and_test(&qp->refcount))
|
|
|
+ if (refcount_dec_and_test(&qp->refcount))
|
|
|
complete(&qp->free);
|
|
|
wait_for_completion(&qp->free);
|
|
|
|