1. 17 6月, 2021 1 次提交
  2. 04 6月, 2021 4 次提交
  3. 20 5月, 2021 1 次提交
  4. 28 4月, 2021 1 次提交
  5. 22 4月, 2021 1 次提交
  6. 09 4月, 2021 1 次提交
  7. 01 4月, 2021 1 次提交
  8. 31 3月, 2021 1 次提交
  9. 26 3月, 2021 1 次提交
    • M
      RDMA: Support more than 255 rdma ports · 1fb7f897
      Mark Bloch 提交于
      Current code uses many different types when dealing with a port of a RDMA
      device: u8, unsigned int and u32. Switch to u32 to clean up the logic.
      
      This allows us to make (at least) the core view consistent and use the
      same type. Unfortunately not all places can be converted. Many uverbs
      functions expect port to be u8 so keep those places in order not to break
      UAPIs.  HW/Spec defined values must also not be changed.
      
      With the switch to u32 we now can support devices with more than 255
      ports. U32_MAX is reserved to make control logic a bit easier to deal
      with. As a device with U32_MAX ports probably isn't going to happen any
      time soon this seems like a non issue.
      
      When a device with more than 255 ports is created uverbs will report the
      RDMA device as having 255 ports as this is the max currently supported.
      
      The verbs interface is not changed yet because the IBTA spec limits the
      port size in too many places to be u8 and all applications that relies in
      verbs won't be able to cope with this change. At this stage, we are
      extending the interfaces that are using vendor channel solely
      
      Once the limitation is lifted mlx5 in switchdev mode will be able to have
      thousands of SFs created by the device. As the only instance of an RDMA
      device that reports more than 255 ports will be a representor device and
      it exposes itself as a RAW Ethernet only device CM/MAD/IPoIB and other
      ULPs aren't effected by this change and their sysfs/interfaces that are
      exposes to userspace can remain unchanged.
      
      While here cleanup some alignment issues and remove unneeded sanity
      checks (mainly in rdmavt),
      
      Link: https://lore.kernel.org/r/20210301070420.439400-1-leon@kernel.orgSigned-off-by: NMark Bloch <mbloch@nvidia.com>
      Signed-off-by: NLeon Romanovsky <leonro@nvidia.com>
      Signed-off-by: NJason Gunthorpe <jgg@nvidia.com>
      1fb7f897
  10. 22 3月, 2021 1 次提交
  11. 11 3月, 2021 1 次提交
  12. 06 3月, 2021 3 次提交
  13. 02 3月, 2021 1 次提交
  14. 17 2月, 2021 1 次提交
  15. 09 2月, 2021 4 次提交
    • B
      RDMA/rxe: Cleanup init_send_wqe · 086f580c
      Bob Pearson 提交于
      This patch changes the type of init_send_wqe in rxe_verbs.c to void since
      it always returns 0. It also separates out the code that copies inline
      data into the send wqe as copy_inline_data_to_wqe().
      
      Link: https://lore.kernel.org/r/20210206002437.2756-1-rpearson@hpe.comSigned-off-by: NBob Pearson <rpearson@hpe.com>
      Signed-off-by: NJason Gunthorpe <jgg@nvidia.com>
      086f580c
    • B
      RDMA/rxe: Fix minor coding style issues · dc78074a
      Bob Pearson 提交于
      checkpatch -f found 3 warnings in RDMA/rxe
      
      1. a missing space following switch
      2. return followed by else
      3. use of strlcpy() instead of strscpy().
      
      This patch fixes each of these. In
      
      		...
      	} elseif (...) {
      		...
      		return 0;
      	} else
      		...
      
      The middle block can be safely moved since it is completely independent of
      the other code.
      
      Link: https://lore.kernel.org/r/20210205230525.49068-1-rpearson@hpe.comSigned-off-by: NBob Pearson <rpearson@hpe.com>
      Signed-off-by: NJason Gunthorpe <jgg@nvidia.com>
      dc78074a
    • K
      RDMA/siw: Fix calculation of tx_valid_cpus size · 429fa969
      Kamal Heib 提交于
      The size of tx_valid_cpus was calculated under the assumption that the
      numa nodes identifiers are continuous, which is not the case in all archs
      as this could lead to the following panic when trying to access an invalid
      tx_valid_cpus index, avoid the following panic by using nr_node_ids
      instead of num_online_nodes() to allocate the tx_valid_cpus size.
      
         Kernel attempted to read user page (8) - exploit attempt? (uid: 0)
         BUG: Kernel NULL pointer dereference on read at 0x00000008
         Faulting instruction address: 0xc0080000081b4a90
         Oops: Kernel access of bad area, sig: 11 [#1]
         LE PAGE_SIZE=64K MMU=Radix SMP NR_CPUS=2048 NUMA PowerNV
         Modules linked in: siw(+) rfkill rpcrdma ib_isert iscsi_target_mod ib_iser libiscsi scsi_transport_iscsi ib_srpt target_core_mod ib_srp scsi_transport_srp ib_ipoib rdma_ucm sunrpc ib_umad rdma_cm ib_cm iw_cm i40iw ib_uverbs ib_core i40e ses enclosure scsi_transport_sas ipmi_powernv ibmpowernv at24 ofpart ipmi_devintf regmap_i2c ipmi_msghandler powernv_flash uio_pdrv_genirq uio mtd opal_prd zram ip_tables xfs libcrc32c sd_mod t10_pi ast i2c_algo_bit drm_vram_helper drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops cec drm_ttm_helper ttm drm vmx_crypto aacraid drm_panel_orientation_quirks dm_mod
         CPU: 40 PID: 3279 Comm: modprobe Tainted: G        W      X --------- ---  5.11.0-0.rc4.129.eln108.ppc64le #2
         NIP:  c0080000081b4a90 LR: c0080000081b4a2c CTR: c0000000007ce1c0
         REGS: c000000027fa77b0 TRAP: 0300   Tainted: G        W      X --------- ---   (5.11.0-0.rc4.129.eln108.ppc64le)
         MSR:  9000000002009033 <SF,HV,VEC,EE,ME,IR,DR,RI,LE>  CR: 44224882  XER: 00000000
         CFAR: c0000000007ce200 DAR: 0000000000000008 DSISR: 40000000 IRQMASK: 0
         GPR00: c0080000081b4a2c c000000027fa7a50 c0080000081c3900 0000000000000040
         GPR04: c000000002023080 c000000012e1c300 000020072ad70000 0000000000000001
         GPR08: c000000001726068 0000000000000008 0000000000000008 c0080000081b5758
         GPR12: c0000000007ce1c0 c0000007fffc3000 00000001590b1e40 0000000000000000
         GPR16: 0000000000000000 0000000000000001 000000011ad68fc8 00007fffcc09c5c8
         GPR20: 0000000000000008 0000000000000000 00000001590b2850 00000001590b1d30
         GPR24: 0000000000043d68 000000011ad67a80 000000011ad67a80 0000000000100000
         GPR28: c000000012e1c300 c0000000020271c8 0000000000000001 c0080000081bf608
         NIP [c0080000081b4a90] siw_init_cpulist+0x194/0x214 [siw]
         LR [c0080000081b4a2c] siw_init_cpulist+0x130/0x214 [siw]
         Call Trace:
         [c000000027fa7a50] [c0080000081b4a2c] siw_init_cpulist+0x130/0x214 [siw] (unreliable)
         [c000000027fa7a90] [c0080000081b4e68] siw_init_module+0x40/0x2a0 [siw]
         [c000000027fa7b30] [c0000000000124f4] do_one_initcall+0x84/0x2e0
         [c000000027fa7c00] [c000000000267ffc] do_init_module+0x7c/0x350
         [c000000027fa7c90] [c00000000026a180] __do_sys_init_module+0x210/0x250
         [c000000027fa7db0] [c0000000000387e4] system_call_exception+0x134/0x230
         [c000000027fa7e10] [c00000000000d660] system_call_common+0xf0/0x27c
         Instruction dump:
         40810044 3d420000 e8bf0000 e88a82d0 3d420000 e90a82c8 792a1f24 7cc4302a
         7d2642aa 79291f24 7d25482a 7d295214 <7d4048a8> 7d4a3b78 7d4049ad 40c2fff4
      
      Fixes: bdcf26bf ("rdma/siw: network and RDMA core interface")
      Link: https://lore.kernel.org/r/20210201112922.141085-1-kamalheib1@gmail.comSigned-off-by: NKamal Heib <kamalheib1@gmail.com>
      Reviewed-by: NBernard Metzler <bmt@zurich.ibm.com>
      Tested-by: NYi Zhang <yi.zhang@redhat.com>
      Signed-off-by: NJason Gunthorpe <jgg@nvidia.com>
      429fa969
    • B
      RDMA/rxe: Fix FIXME in rxe_udp_encap_recv() · 899aba89
      Bob Pearson 提交于
      rxe_udp_encap_recv() drops the reference to rxe->ib_dev taken by
      rxe_get_dev_from_net() which should be held until each received skb is
      freed. This patch moves the calls to ib_device_put() to each place a
      received skb is freed. It also takes references to the ib_device for each
      cloned skb created to process received multicast packets.
      
      Fixes: 4c173f59 ("RDMA/rxe: Use ib_device_get_by_netdev() instead of open coding")
      Link: https://lore.kernel.org/r/20210128233318.2591-1-rpearson@hpe.comSigned-off-by: NBob Pearson <rpearson@hpe.com>
      Signed-off-by: NJason Gunthorpe <jgg@nvidia.com>
      899aba89
  16. 06 2月, 2021 4 次提交
  17. 29 1月, 2021 9 次提交
  18. 23 1月, 2021 4 次提交
    • L
      RDMA/sw/rdmavt/qp: Fix a bunch of kernel-doc misdemeanours · f8e9a970
      Lee Jones 提交于
      Fixes the following W=1 kernel build warning(s):
      
       drivers/infiniband/sw/rdmavt/qp.c:165: warning: Function parameter or member 'rdi' not described in 'rvt_wss_init'
       drivers/infiniband/sw/rdmavt/qp.c:329: warning: Function parameter or member 'rdi' not described in 'init_qpn_table'
       drivers/infiniband/sw/rdmavt/qp.c:534: warning: Function parameter or member 'type' not described in 'alloc_qpn'
       drivers/infiniband/sw/rdmavt/qp.c:664: warning: Function parameter or member 'wqe' not described in 'rvt_swqe_has_lkey'
       drivers/infiniband/sw/rdmavt/qp.c:664: warning: Function parameter or member 'lkey' not described in 'rvt_swqe_has_lkey'
       drivers/infiniband/sw/rdmavt/qp.c:682: warning: Function parameter or member 'qp' not described in 'rvt_qp_sends_has_lkey'
       drivers/infiniband/sw/rdmavt/qp.c:682: warning: Function parameter or member 'lkey' not described in 'rvt_qp_sends_has_lkey'
       drivers/infiniband/sw/rdmavt/qp.c:706: warning: Function parameter or member 'qp' not described in 'rvt_qp_acks_has_lkey'
       drivers/infiniband/sw/rdmavt/qp.c:706: warning: Function parameter or member 'lkey' not described in 'rvt_qp_acks_has_lkey'
       drivers/infiniband/sw/rdmavt/qp.c:866: warning: Function parameter or member 'rdi' not described in 'rvt_init_qp'
       drivers/infiniband/sw/rdmavt/qp.c:920: warning: Function parameter or member 'rdi' not described in '_rvt_reset_qp'
       drivers/infiniband/sw/rdmavt/qp.c:1736: warning: Function parameter or member 'udata' not described in 'rvt_destroy_qp'
       drivers/infiniband/sw/rdmavt/qp.c:1924: warning: Function parameter or member 'qp' not described in 'rvt_qp_valid_operation'
       drivers/infiniband/sw/rdmavt/qp.c:1924: warning: Function parameter or member 'post_parms' not described in 'rvt_qp_valid_operation'
       drivers/infiniband/sw/rdmavt/qp.c:1924: warning: Function parameter or member 'wr' not described in 'rvt_qp_valid_operation'
       drivers/infiniband/sw/rdmavt/qp.c:2020: warning: Function parameter or member 'call_send' not described in 'rvt_post_one_wr'
       drivers/infiniband/sw/rdmavt/qp.c:2621: warning: Function parameter or member 'qp' not described in 'rvt_stop_rnr_timer'
      
      Link: https://lore.kernel.org/r/20210121094519.2044049-31-lee.jones@linaro.org
      Cc: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com>
      Cc: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com>
      Cc: Doug Ledford <dledford@redhat.com>
      Cc: Jason Gunthorpe <jgg@ziepe.ca>
      Cc: linux-rdma@vger.kernel.org
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      Signed-off-by: NJason Gunthorpe <jgg@nvidia.com>
      f8e9a970
    • L
      RDMA/sw/rdmavt/mr: Fix some issues related to formatting and missing descriptions · cf8f5cea
      Lee Jones 提交于
      Fixes the following W=1 kernel build warning(s):
      
       drivers/infiniband/sw/rdmavt/mr.c:380: warning: Function parameter or member 'virt_addr' not described in 'rvt_reg_user_mr'
       drivers/infiniband/sw/rdmavt/mr.c:449: warning: Function parameter or member 'qp' not described in 'rvt_dereg_clean_qp_cb'
       drivers/infiniband/sw/rdmavt/mr.c:449: warning: Function parameter or member 'v' not described in 'rvt_dereg_clean_qp_cb'
       drivers/infiniband/sw/rdmavt/mr.c:466: warning: Function parameter or member 'mr' not described in 'rvt_dereg_clean_qps'
       drivers/infiniband/sw/rdmavt/mr.c:484: warning: Function parameter or member 'mr' not described in 'rvt_check_refs'
       drivers/infiniband/sw/rdmavt/mr.c:484: warning: Function parameter or member 't' not described in 'rvt_check_refs'
       drivers/infiniband/sw/rdmavt/mr.c:513: warning: Function parameter or member 'mr' not described in 'rvt_mr_has_lkey'
       drivers/infiniband/sw/rdmavt/mr.c:513: warning: Function parameter or member 'lkey' not described in 'rvt_mr_has_lkey'
       drivers/infiniband/sw/rdmavt/mr.c:526: warning: Function parameter or member 'ss' not described in 'rvt_ss_has_lkey'
       drivers/infiniband/sw/rdmavt/mr.c:526: warning: Function parameter or member 'lkey' not described in 'rvt_ss_has_lkey'
       drivers/infiniband/sw/rdmavt/mr.c:551: warning: Function parameter or member 'udata' not described in 'rvt_dereg_mr'
      
      Link: https://lore.kernel.org/r/20210121094519.2044049-27-lee.jones@linaro.org
      Cc: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com>
      Cc: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com>
      Cc: Doug Ledford <dledford@redhat.com>
      Cc: Jason Gunthorpe <jgg@ziepe.ca>
      Cc: linux-rdma@vger.kernel.org
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      Signed-off-by: NJason Gunthorpe <jgg@nvidia.com>
      cf8f5cea
    • L
      RDMA/sw/rdmavt/mcast: Demote incomplete kernel-doc header · 00d25ff6
      Lee Jones 提交于
      Fixes the following W=1 kernel build warning(s):
      
       drivers/infiniband/sw/rdmavt/mcast.c:195: warning: Function parameter or member 'rdi' not described in 'rvt_mcast_add'
       drivers/infiniband/sw/rdmavt/mcast.c:195: warning: Function parameter or member 'ibp' not described in 'rvt_mcast_add'
      
      Link: https://lore.kernel.org/r/20210121094519.2044049-23-lee.jones@linaro.org
      Cc: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com>
      Cc: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com>
      Cc: Doug Ledford <dledford@redhat.com>
      Cc: Jason Gunthorpe <jgg@ziepe.ca>
      Cc: linux-rdma@vger.kernel.org
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      Signed-off-by: NJason Gunthorpe <jgg@nvidia.com>
      00d25ff6
    • L
      RDMA/sw/rdmavt/mad: Fix 'rvt_process_mad()'s documentation header · e54e3db3
      Lee Jones 提交于
      Fixes the following W=1 kernel build warning(s):
      
       drivers/infiniband/sw/rdmavt/mad.c:75: warning: Function parameter or member 'in' not described in 'rvt_process_mad'
       drivers/infiniband/sw/rdmavt/mad.c:75: warning: Function parameter or member 'in_mad_size' not described in 'rvt_process_mad'
       drivers/infiniband/sw/rdmavt/mad.c:75: warning: Function parameter or member 'out' not described in 'rvt_process_mad'
       drivers/infiniband/sw/rdmavt/mad.c:75: warning: Function parameter or member 'out_mad_size' not described in 'rvt_process_mad'
       drivers/infiniband/sw/rdmavt/mad.c:75: warning: Function parameter or member 'out_mad_pkey_index' not described in 'rvt_process_mad'
       drivers/infiniband/sw/rdmavt/mad.c:75: warning: Excess function parameter 'in_mad' description in 'rvt_process_mad'
       drivers/infiniband/sw/rdmavt/mad.c:75: warning: Excess function parameter 'out_mad' description in 'rvt_process_mad'
      
      Link: https://lore.kernel.org/r/20210121094519.2044049-21-lee.jones@linaro.org
      Cc: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com>
      Cc: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com>
      Cc: Doug Ledford <dledford@redhat.com>
      Cc: Jason Gunthorpe <jgg@ziepe.ca>
      Cc: linux-rdma@vger.kernel.org
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      Signed-off-by: NJason Gunthorpe <jgg@nvidia.com>
      e54e3db3