mlx4_core: Move kernel doorbell management into core
In addition to mlx4_ib, there will be ethernet and FC consumers of mlx4_core, so move the code for managing kernel doorbells into the core module to avoid having to duplicate this multiple times. Signed-off-by: Yevgeny Petrilin <yevgenyp@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
此提交包含在:
@@ -129,7 +129,7 @@ struct ib_srq *mlx4_ib_create_srq(struct ib_pd *pd,
|
||||
if (err)
|
||||
goto err_mtt;
|
||||
} else {
|
||||
err = mlx4_ib_db_alloc(dev, &srq->db, 0);
|
||||
err = mlx4_db_alloc(dev->dev, &srq->db, 0);
|
||||
if (err)
|
||||
goto err_srq;
|
||||
|
||||
@@ -200,7 +200,7 @@ err_buf:
|
||||
|
||||
err_db:
|
||||
if (!pd->uobject)
|
||||
mlx4_ib_db_free(dev, &srq->db);
|
||||
mlx4_db_free(dev->dev, &srq->db);
|
||||
|
||||
err_srq:
|
||||
kfree(srq);
|
||||
@@ -267,7 +267,7 @@ int mlx4_ib_destroy_srq(struct ib_srq *srq)
|
||||
kfree(msrq->wrid);
|
||||
mlx4_buf_free(dev->dev, msrq->msrq.max << msrq->msrq.wqe_shift,
|
||||
&msrq->buf);
|
||||
mlx4_ib_db_free(dev, &msrq->db);
|
||||
mlx4_db_free(dev->dev, &msrq->db);
|
||||
}
|
||||
|
||||
kfree(msrq);
|
||||
|
新增問題並參考
封鎖使用者