This patch series mainly adds a mix multihop addressing for support the 32K specification of send wqe from UM. It adds the MTR (memory translate region) design for unified management of MTT (memory translate table). The MTT design requires that the hopnum of the address space must be the same and cannot meet the requirements of the current max hopnum of the hip08. The hopnum of sqwqe up to 3 level and the extend sge up to 1 level. As a result, we add an MTR based on mtt to solve this problem. The MTR allows a contiguous address space to use different hopnums, so that the driver supports the mixed hop feature in UM. This patch will depend on the patch("[PATCH for-next] RDMA/hns: Clear magic number") Lijun Ou (3): RDMA/hns: Add mtr support for mixed multihop addressing RDMA/hns: add a group interfaces for optimizing buffers getting flow RDMA/hns: Fix bug when wqe num is larger than 16K drivers/infiniband/hw/hns/hns_roce_alloc.c | 131 ++++++++ drivers/infiniband/hw/hns/hns_roce_device.h | 59 ++++ drivers/infiniband/hw/hns/hns_roce_hem.c | 467 ++++++++++++++++++++++++++++ drivers/infiniband/hw/hns/hns_roce_hem.h | 14 + drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 118 ++++--- drivers/infiniband/hw/hns/hns_roce_mr.c | 121 +++++++ drivers/infiniband/hw/hns/hns_roce_qp.c | 189 ++++++++--- 7 files changed, 1016 insertions(+), 83 deletions(-) -- 1.9.1