forked from luck/tmp_suning_uos_patched
RDMA/qedr: Remove fbo and zbva from the MR
zbva is always false, so fbo is never read. A 'zero-based-virtual-address' is simply IOVA == 0, and the driver already supports this. Link: https://lore.kernel.org/r/16-v2-270386b7e60b+28f4-umem_1_jgg@nvidia.com Acked-by: Michal Kalderon <michal.kalderon@marvell.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
This commit is contained in:
parent
81655d3c4a
commit
b3003a7445
|
@ -2882,10 +2882,8 @@ struct ib_mr *qedr_reg_user_mr(struct ib_pd *ibpd, u64 start, u64 len,
|
|||
mr->hw_mr.pbl_two_level = mr->info.pbl_info.two_layered;
|
||||
mr->hw_mr.pbl_page_size_log = ilog2(mr->info.pbl_info.pbl_size);
|
||||
mr->hw_mr.page_size_log = PAGE_SHIFT;
|
||||
mr->hw_mr.fbo = ib_umem_offset(mr->umem);
|
||||
mr->hw_mr.length = len;
|
||||
mr->hw_mr.vaddr = usr_addr;
|
||||
mr->hw_mr.zbva = false;
|
||||
mr->hw_mr.phy_mr = false;
|
||||
mr->hw_mr.dma_mr = false;
|
||||
|
||||
|
@ -2978,10 +2976,8 @@ static struct qedr_mr *__qedr_alloc_mr(struct ib_pd *ibpd,
|
|||
mr->hw_mr.pbl_ptr = 0;
|
||||
mr->hw_mr.pbl_two_level = mr->info.pbl_info.two_layered;
|
||||
mr->hw_mr.pbl_page_size_log = ilog2(mr->info.pbl_info.pbl_size);
|
||||
mr->hw_mr.fbo = 0;
|
||||
mr->hw_mr.length = 0;
|
||||
mr->hw_mr.vaddr = 0;
|
||||
mr->hw_mr.zbva = false;
|
||||
mr->hw_mr.phy_mr = true;
|
||||
mr->hw_mr.dma_mr = false;
|
||||
|
||||
|
|
|
@ -1521,7 +1521,7 @@ qed_rdma_register_tid(void *rdma_cxt,
|
|||
params->pbl_two_level);
|
||||
|
||||
SET_FIELD(flags, RDMA_REGISTER_TID_RAMROD_DATA_ZERO_BASED,
|
||||
params->zbva);
|
||||
false);
|
||||
|
||||
SET_FIELD(flags, RDMA_REGISTER_TID_RAMROD_DATA_PHY_MR, params->phy_mr);
|
||||
|
||||
|
@ -1583,15 +1583,7 @@ qed_rdma_register_tid(void *rdma_cxt,
|
|||
p_ramrod->pd = cpu_to_le16(params->pd);
|
||||
p_ramrod->length_hi = (u8)(params->length >> 32);
|
||||
p_ramrod->length_lo = DMA_LO_LE(params->length);
|
||||
if (params->zbva) {
|
||||
/* Lower 32 bits of the registered MR address.
|
||||
* In case of zero based MR, will hold FBO
|
||||
*/
|
||||
p_ramrod->va.hi = 0;
|
||||
p_ramrod->va.lo = cpu_to_le32(params->fbo);
|
||||
} else {
|
||||
DMA_REGPAIR_LE(p_ramrod->va, params->vaddr);
|
||||
}
|
||||
DMA_REGPAIR_LE(p_ramrod->va, params->vaddr);
|
||||
DMA_REGPAIR_LE(p_ramrod->pbl_base, params->pbl_ptr);
|
||||
|
||||
/* DIF */
|
||||
|
|
|
@ -242,10 +242,8 @@ struct qed_rdma_register_tid_in_params {
|
|||
bool pbl_two_level;
|
||||
u8 pbl_page_size_log;
|
||||
u8 page_size_log;
|
||||
u32 fbo;
|
||||
u64 length;
|
||||
u64 vaddr;
|
||||
bool zbva;
|
||||
bool phy_mr;
|
||||
bool dma_mr;
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user