1. 20 Jun, 2019 3 commits
    • Lijun Ou's avatar
      RDMA/hns: Fix bug when wqe num is larger than 16K · 8d18ad83
      Lijun Ou authored
      hip08 can support up to 32768 wqes in one qp. currently if the wqe num
      is larger than 16384, the driver will lead a calltrace as follows.
      
      [21361.393725] Call trace:
      [21361.398605]  hns_roce_v2_modify_qp+0xbcc/0x1360 [hns_roce_hw_v2]
      [21361.410627]  hns_roce_modify_qp+0x1d8/0x2f8 [hns_roce]
      [21361.420906]  _ib_modify_qp+0x70/0x118
      [21361.428222]  ib_modify_qp+0x14/0x1c
      [21361.435193]  rt_ktest_modify_qp+0xb8/0x650 [rdma_test]
      [21361.445472]  exec_modify_qp_cmd+0x110/0x4d8 [rdma_test]
      [21361.455924]  rt_ktest_dispatch_cmd_3+0xa94/0x2edc [rdma_test]
      [21361.467422]  rt_ktest_dispatch_cmd_2+0x9c/0x108 [rdma_test]
      [21361.478570]  rt_ktest_dispatch_cmd+0x138/0x904 [rdma_test]
      [21361.489545]  rt_ktest_dev_write+0x328/0x4b0 [rdma_test]
      [21361.499998]  __vfs_write+0x38/0x15c
      [21361.506966]  vfs_write+0xa8/0x1a0
      [21361.513586]  ksys_write+0x50/0xb0
      [21361.520206]  sys_write+0xc/0x14
      [21361.526479]  el0_svc_naked+0x30/0x34
      [21361.533622] Code: 1ac10841 d37d7c22 0b000021 d37df021 (f86268c0)
      [21361.545815] ---[ end trace e2a1feb2c3d7f13c ]---
      
      When the wqe num is larger than 16384, hns_roce_table_find will return an
      invalid mtt, this will lead an kernel paging requet error if the driver try
      to access it. It's the mtt design defect which can't support up to the max
      wqe num of hip08.
      
      This patch fixs it by replacing mtt with mtr for wqe.
      
      Fixes: 926a01dc ("RDMA/hns: Add QP operations support for hip08 SoC")
      Signed-off-by: default avatarXi Wang <wangxi11@huawei.com>
      Signed-off-by: default avatarLijun Ou <oulijun@huawei.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      8d18ad83
    • Lijun Ou's avatar
      RDMA/hns: Add a group interfaces for optimizing buffers getting flow · 2ac0bc5e
      Lijun Ou authored
      Currently, the code for getting umem and kmem buffers exist many files,
      this patch adds a group interfaces to simplify the buffers getting flow.
      Signed-off-by: default avatarXi Wang <wangxi11@huawei.com>
      Signed-off-by: default avatarLijun Ou <oulijun@huawei.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      2ac0bc5e
    • Lijun Ou's avatar
      RDMA/hns: Add mtr support for mixed multihop addressing · 38389eaa
      Lijun Ou authored
      Currently, the MTT(memory translate table) design required a buffer
      space must has the same hopnum, but the hip08 hw can support mixed
      hopnum config in a buffer space.
      
      This patch adds the MTR(memory translate region) design for supporting
      mixed multihop.
      Signed-off-by: default avatarXi Wang <wangxi11@huawei.com>
      Signed-off-by: default avatarLijun Ou <oulijun@huawei.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      38389eaa
  2. 19 Jun, 2019 8 commits
  3. 17 Jun, 2019 1 commit
  4. 16 Jun, 2019 2 commits
  5. 13 Jun, 2019 17 commits
  6. 11 Jun, 2019 4 commits
  7. 10 Jun, 2019 4 commits
  8. 07 Jun, 2019 1 commit