1. 09 Feb, 2021 1 commit
    • Kamal Heib's avatar
      RDMA/siw: Fix calculation of tx_valid_cpus size · 429fa969
      Kamal Heib authored
      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: default avatarKamal Heib <kamalheib1@gmail.com>
      Reviewed-by: default avatarBernard Metzler <bmt@zurich.ibm.com>
      Tested-by: default avatarYi Zhang <yi.zhang@redhat.com>
      Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
      429fa969
  2. 08 Feb, 2021 13 commits
  3. 05 Feb, 2021 10 commits
  4. 02 Feb, 2021 5 commits
  5. 28 Jan, 2021 11 commits
    • Gal Pressman's avatar
      RDMA/efa: Remove unused syndrome enum values · 4629c5d4
      Gal Pressman authored
      The notification syndrome enum values are unused, remove them.
      
      Link: https://lore.kernel.org/r/20210126120702.9807-6-galpress@amazon.comReviewed-by: default avatarFiras JahJah <firasj@amazon.com>
      Signed-off-by: default avatarGal Pressman <galpress@amazon.com>
      Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
      4629c5d4
    • Gal Pressman's avatar
      RDMA/efa: Remove unused 'select' field from get/set feature command descriptor · 9bf61b8c
      Gal Pressman authored
      The 'select' field in the get/set feature admin command is unimplemented,
      unused and misleading, remove it.  The command always refers to the
      current values.
      
      Link: https://lore.kernel.org/r/20210126120702.9807-5-galpress@amazon.comReviewed-by: default avatarFiras JahJah <firasj@amazon.com>
      Reviewed-by: default avatarYossi Leybovich <sleybo@amazon.com>
      Signed-off-by: default avatarGal Pressman <galpress@amazon.com>
      Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
      9bf61b8c
    • Gal Pressman's avatar
      RDMA/efa: Remove unnecessary indentation in defs comments · 631b6189
      Gal Pressman authored
      The indentation in the subsequent comment lines is unnecessary, remove it.
      
      Link: https://lore.kernel.org/r/20210126120702.9807-4-galpress@amazon.comReviewed-by: default avatarFiras JahJah <firasj@amazon.com>
      Reviewed-by: default avatarYossi Leybovich <sleybo@amazon.com>
      Signed-off-by: default avatarGal Pressman <galpress@amazon.com>
      Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
      631b6189
    • Gal Pressman's avatar
      RDMA/efa: Remove duplication of upper/lower_32_bits · c2a50568
      Gal Pressman authored
      The EFA_DMA_ADDR_TO_UINT32_HIGH/LOW macros are the same as the kernel's
      upper/lower_32_bits, remove them and use kernel macros instead.
      
      Link: https://lore.kernel.org/r/20210126120702.9807-3-galpress@amazon.comReviewed-by: default avatarFiras JahJah <firasj@amazon.com>
      Signed-off-by: default avatarGal Pressman <galpress@amazon.com>
      Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
      c2a50568
    • Gal Pressman's avatar
      RDMA/efa: Remove redundant NULL pointer check of CQE · 68fb9f3e
      Gal Pressman authored
      A pointer to store the command completion must be provided as it is always
      used in efa_com_put_comp_ctx() to return the completion context back to
      the pool. Remove the NULL pointer check and the redundant 'status' field
      stored on the context as it could be retrieved from the completion itself.
      
      Link: https://lore.kernel.org/r/20210126120702.9807-2-galpress@amazon.comReviewed-by: default avatarFiras JahJah <firasj@amazon.com>
      Reviewed-by: default avatarYossi Leybovich <sleybo@amazon.com>
      Signed-off-by: default avatarGal Pressman <galpress@amazon.com>
      Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
      68fb9f3e
    • Lee Jones's avatar
      RDMA/hw/hfi1/rc: Demote incorrectly populated kernel-doc header · c2a54b68
      Lee Jones authored
      Fixes the following W=1 kernel build warning(s):
      
       drivers/infiniband/hw/hfi1/rc.c:1388: warning: Function parameter or member 'packet' not described in 'hfi1_send_rc_ack'
       drivers/infiniband/hw/hfi1/rc.c:1388: warning: Function parameter or member 'is_fecn' not described in 'hfi1_send_rc_ack'
       drivers/infiniband/hw/hfi1/rc.c:1388: warning: Excess function parameter 'qp' description in 'hfi1_send_rc_ack'
      
      Link: https://lore.kernel.org/r/20210126124732.3320971-21-lee.jones@linaro.org
      Cc: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com>
      Cc: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com>
      Cc: Doug Ledford <dledford@redhat.com>
      Cc: Jason Gunthorpe <jgg@ziepe.ca>
      Cc: linux-rdma@vger.kernel.org
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
      c2a54b68
    • Lee Jones's avatar
      RDMA/hw/hfi1/verbs: Demote non-conforming doc header and fix a misspelling · cd5962d4
      Lee Jones authored
      Fixes the following W=1 kernel build warning(s):
      
       drivers/infiniband/hw/hfi1/verbs.c:741: warning: Function parameter or member 'qp' not described in 'update_tx_opstats'
       drivers/infiniband/hw/hfi1/verbs.c:1160: warning: Function parameter or member 'pkey' not described in 'egress_pkey_check'
       drivers/infiniband/hw/hfi1/verbs.c:1160: warning: Excess function parameter 'bkey' description in 'egress_pkey_check'
       drivers/infiniband/hw/hfi1/verbs.c:1217: warning: Function parameter or member 'qp' not described in 'get_send_routine'
       drivers/infiniband/hw/hfi1/verbs.c:1217: warning: Function parameter or member 'ps' not described in 'get_send_routine'
      
      Link: https://lore.kernel.org/r/20210126124732.3320971-20-lee.jones@linaro.org
      Cc: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com>
      Cc: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com>
      Cc: Doug Ledford <dledford@redhat.com>
      Cc: Jason Gunthorpe <jgg@ziepe.ca>
      Cc: linux-rdma@vger.kernel.org
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
      cd5962d4
    • Lee Jones's avatar
      RDMA/hw/hfi1/user_exp_rcv: Demote half-documented and kernel-doc abuses · c6f2b65e
      Lee Jones authored
      Fixes the following W=1 kernel build warning(s):
      
       drivers/infiniband/hw/hfi1/user_exp_rcv.c:174: warning: Function parameter or member 'fd' not described in 'unpin_rcv_pages'
       drivers/infiniband/hw/hfi1/user_exp_rcv.c:174: warning: Function parameter or member 'tidbuf' not described in 'unpin_rcv_pages'
       drivers/infiniband/hw/hfi1/user_exp_rcv.c:174: warning: Function parameter or member 'node' not described in 'unpin_rcv_pages'
       drivers/infiniband/hw/hfi1/user_exp_rcv.c:174: warning: Function parameter or member 'idx' not described in 'unpin_rcv_pages'
       drivers/infiniband/hw/hfi1/user_exp_rcv.c:174: warning: Function parameter or member 'npages' not described in 'unpin_rcv_pages'
       drivers/infiniband/hw/hfi1/user_exp_rcv.c:174: warning: Function parameter or member 'mapped' not described in 'unpin_rcv_pages'
       drivers/infiniband/hw/hfi1/user_exp_rcv.c:196: warning: Function parameter or member 'fd' not described in 'pin_rcv_pages'
       drivers/infiniband/hw/hfi1/user_exp_rcv.c:196: warning: Function parameter or member 'tidbuf' not described in 'pin_rcv_pages'
      
      Link: https://lore.kernel.org/r/20210126124732.3320971-19-lee.jones@linaro.org
      Cc: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com>
      Cc: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com>
      Cc: Doug Ledford <dledford@redhat.com>
      Cc: Jason Gunthorpe <jgg@ziepe.ca>
      Cc: linux-rdma@vger.kernel.org
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
      c6f2b65e
    • Lee Jones's avatar
      RDMA/hw/hfi1/ud: Fix a little more doc-rot · 16e1b536
      Lee Jones authored
      Fixes the following W=1 kernel build warning(s):
      
       drivers/infiniband/hw/hfi1/ud.c:477: warning: Function parameter or member 'ps' not described in 'hfi1_make_ud_req'
       drivers/infiniband/hw/hfi1/ud.c:855: warning: Function parameter or member 'packet' not described in 'hfi1_ud_rcv'
       drivers/infiniband/hw/hfi1/ud.c:855: warning: Excess function parameter 'ibp' description in 'hfi1_ud_rcv'
       drivers/infiniband/hw/hfi1/ud.c:855: warning: Excess function parameter 'hdr' description in 'hfi1_ud_rcv'
       drivers/infiniband/hw/hfi1/ud.c:855: warning: Excess function parameter 'rcv_flags' description in 'hfi1_ud_rcv'
       drivers/infiniband/hw/hfi1/ud.c:855: warning: Excess function parameter 'data' description in 'hfi1_ud_rcv'
       drivers/infiniband/hw/hfi1/ud.c:855: warning: Excess function parameter 'tlen' description in 'hfi1_ud_rcv'
       drivers/infiniband/hw/hfi1/ud.c:855: warning: Excess function parameter 'qp' description in 'hfi1_ud_rcv'
      
      Link: https://lore.kernel.org/r/20210126124732.3320971-18-lee.jones@linaro.org
      Cc: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com>
      Cc: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com>
      Cc: Doug Ledford <dledford@redhat.com>
      Cc: Jason Gunthorpe <jgg@ziepe.ca>
      Cc: linux-rdma@vger.kernel.org
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
      16e1b536
    • Lee Jones's avatar
      RDMA/hw/hfi1/uc: Fix a little doc-rot · d6a8bfe0
      Lee Jones authored
      Fixes the following W=1 kernel build warning(s):
      
       drivers/infiniband/hw/hfi1/uc.c:64: warning: Function parameter or member 'ps' not described in 'hfi1_make_uc_req'
       drivers/infiniband/hw/hfi1/uc.c:306: warning: Function parameter or member 'packet' not described in 'hfi1_uc_rcv'
       drivers/infiniband/hw/hfi1/uc.c:306: warning: Excess function parameter 'ibp' description in 'hfi1_uc_rcv'
       drivers/infiniband/hw/hfi1/uc.c:306: warning: Excess function parameter 'hdr' description in 'hfi1_uc_rcv'
       drivers/infiniband/hw/hfi1/uc.c:306: warning: Excess function parameter 'rcv_flags' description in 'hfi1_uc_rcv'
       drivers/infiniband/hw/hfi1/uc.c:306: warning: Excess function parameter 'data' description in 'hfi1_uc_rcv'
       drivers/infiniband/hw/hfi1/uc.c:306: warning: Excess function parameter 'tlen' description in 'hfi1_uc_rcv'
       drivers/infiniband/hw/hfi1/uc.c:306: warning: Excess function parameter 'qp' description in 'hfi1_uc_rcv'
      
      Link: https://lore.kernel.org/r/20210126124732.3320971-17-lee.jones@linaro.org
      Cc: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com>
      Cc: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com>
      Cc: Doug Ledford <dledford@redhat.com>
      Cc: Jason Gunthorpe <jgg@ziepe.ca>
      Cc: linux-rdma@vger.kernel.org
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
      d6a8bfe0
    • Lee Jones's avatar
      RDMA/hw/hfi1/tid_rdma: Fix a plethora of kernel-doc issues · cd7727fd
      Lee Jones authored
      Fixes the following W=1 kernel build warning(s):
      
       drivers/infiniband/hw/hfi1/tid_rdma.c:321: warning: Function parameter or member 'rdi' not described in 'qp_to_rcd'
       drivers/infiniband/hw/hfi1/tid_rdma.c:321: warning: Function parameter or member 'qp' not described in 'qp_to_rcd'
       drivers/infiniband/hw/hfi1/tid_rdma.c:505: warning: Function parameter or member 'queue' not described in 'kernel_tid_waiters'
       drivers/infiniband/hw/hfi1/tid_rdma.c:536: warning: Function parameter or member 'rcd' not described in 'dequeue_tid_waiter'
       drivers/infiniband/hw/hfi1/tid_rdma.c:536: warning: Function parameter or member 'queue' not described in 'dequeue_tid_waiter'
       drivers/infiniband/hw/hfi1/tid_rdma.c:536: warning: Function parameter or member 'qp' not described in 'dequeue_tid_waiter'
       drivers/infiniband/hw/hfi1/tid_rdma.c:562: warning: Function parameter or member 'queue' not described in 'queue_qp_for_tid_wait'
       drivers/infiniband/hw/hfi1/tid_rdma.c:607: warning: Function parameter or member 'qp' not described in 'tid_rdma_schedule_tid_wakeup'
       drivers/infiniband/hw/hfi1/tid_rdma.c:639: warning: Function parameter or member 'work' not described in 'tid_rdma_trigger_resume'
       drivers/infiniband/hw/hfi1/tid_rdma.c:666: warning: Function parameter or member 'qp' not described in '_tid_rdma_flush_wait'
       drivers/infiniband/hw/hfi1/tid_rdma.c:666: warning: Function parameter or member 'queue' not described in '_tid_rdma_flush_wait'
       drivers/infiniband/hw/hfi1/tid_rdma.c:713: warning: Function parameter or member 'rcd' not described in 'kern_reserve_flow'
       drivers/infiniband/hw/hfi1/tid_rdma.c:713: warning: Function parameter or member 'last' not described in 'kern_reserve_flow'
       drivers/infiniband/hw/hfi1/tid_rdma.c:879: warning: Function parameter or member 'flow' not described in 'tid_rdma_find_phys_blocks_4k'
       drivers/infiniband/hw/hfi1/tid_rdma.c:879: warning: Function parameter or member 'pages' not described in 'tid_rdma_find_phys_blocks_4k'
       drivers/infiniband/hw/hfi1/tid_rdma.c:879: warning: Function parameter or member 'npages' not described in 'tid_rdma_find_phys_blocks_4k'
       drivers/infiniband/hw/hfi1/tid_rdma.c:879: warning: Function parameter or member 'list' not described in 'tid_rdma_find_phys_blocks_4k'
       drivers/infiniband/hw/hfi1/tid_rdma.c:972: warning: Function parameter or member 'list' not described in 'tid_flush_pages'
       drivers/infiniband/hw/hfi1/tid_rdma.c:972: warning: Function parameter or member 'idx' not described in 'tid_flush_pages'
       drivers/infiniband/hw/hfi1/tid_rdma.c:972: warning: Function parameter or member 'pages' not described in 'tid_flush_pages'
       drivers/infiniband/hw/hfi1/tid_rdma.c:972: warning: Function parameter or member 'sets' not described in 'tid_flush_pages'
       drivers/infiniband/hw/hfi1/tid_rdma.c:1017: warning: Function parameter or member 'flow' not described in 'tid_rdma_find_phys_blocks_8k'
       drivers/infiniband/hw/hfi1/tid_rdma.c:1017: warning: Function parameter or member 'pages' not described in 'tid_rdma_find_phys_blocks_8k'
       drivers/infiniband/hw/hfi1/tid_rdma.c:1017: warning: Function parameter or member 'npages' not described in 'tid_rdma_find_phys_blocks_8k'
       drivers/infiniband/hw/hfi1/tid_rdma.c:1017: warning: Function parameter or member 'list' not described in 'tid_rdma_find_phys_blocks_8k'
       drivers/infiniband/hw/hfi1/tid_rdma.c:1083: warning: Function parameter or member 'flow' not described in 'kern_find_pages'
       drivers/infiniband/hw/hfi1/tid_rdma.c:1083: warning: Function parameter or member 'pages' not described in 'kern_find_pages'
       drivers/infiniband/hw/hfi1/tid_rdma.c:1083: warning: Function parameter or member 'ss' not described in 'kern_find_pages'
       drivers/infiniband/hw/hfi1/tid_rdma.c:1083: warning: Function parameter or member 'last' not described in 'kern_find_pages'
       drivers/infiniband/hw/hfi1/tid_rdma.c:1604: warning: Function parameter or member 'req' not described in 'hfi1_kern_exp_rcv_free_flows'
       drivers/infiniband/hw/hfi1/tid_rdma.c:3458: warning: Function parameter or member 'qp' not described in 'hfi1_tid_write_alloc_resources'
       drivers/infiniband/hw/hfi1/tid_rdma.c:3458: warning: Function parameter or member 'intr_ctx' not described in 'hfi1_tid_write_alloc_resources'
      
      Link: https://lore.kernel.org/r/20210126124732.3320971-16-lee.jones@linaro.org
      Cc: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com>
      Cc: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com>
      Cc: Doug Ledford <dledford@redhat.com>
      Cc: Jason Gunthorpe <jgg@ziepe.ca>
      Cc: linux-rdma@vger.kernel.org
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
      cd7727fd