1. 04 1月, 2020 1 次提交
  2. 23 10月, 2019 1 次提交
    • R
      infiniband: fix ulp/iser/iser_verbs.c kernel-doc notation · 134a42a6
      rd.dunlab@gmail.com 提交于
      Various kernel-doc fixes:
      
      - fix typos
      - don't use /** for internal structs or functions
      - fix Return: kernel-doc formatting
      - add kernel-doc notation for missing function parameters
      
      ../drivers/infiniband/ulp/iser/iser_verbs.c:159: warning: Function parameter or member 'ib_conn' not described in 'iser_alloc_fmr_pool'
      ../drivers/infiniband/ulp/iser/iser_verbs.c:159: warning: Function parameter or member 'cmds_max' not described in 'iser_alloc_fmr_pool'
      ../drivers/infiniband/ulp/iser/iser_verbs.c:159: warning: Function parameter or member 'size' not described in 'iser_alloc_fmr_pool'
      ../drivers/infiniband/ulp/iser/iser_verbs.c:221: warning: Function parameter or member 'ib_conn' not described in 'iser_free_fmr_pool'
      ../drivers/infiniband/ulp/iser/iser_verbs.c:304: warning: Function parameter or member 'ib_conn' not described in 'iser_alloc_fastreg_pool'
      ../drivers/infiniband/ulp/iser/iser_verbs.c:304: warning: Function parameter or member 'cmds_max' not described in 'iser_alloc_fastreg_pool'
      ../drivers/infiniband/ulp/iser/iser_verbs.c:304: warning: Function parameter or member 'size' not described in 'iser_alloc_fastreg_pool'
      ../drivers/infiniband/ulp/iser/iser_verbs.c:338: warning: Function parameter or member 'ib_conn' not described in 'iser_free_fastreg_pool'
      ../drivers/infiniband/ulp/iser/iser_verbs.c:568: warning: Function parameter or member 'iser_conn' not described in 'iser_conn_release'
      ../drivers/infiniband/ulp/iser/iser_verbs.c:603: warning: Function parameter or member 'iser_conn' not described in 'iser_conn_terminate'
      ../drivers/infiniband/ulp/iser/iser_verbs.c:1040: warning: Function parameter or member 'signal' not described in 'iser_post_send'
      ../drivers/infiniband/ulp/iser/iser_verbs.c:1040: warning: Function parameter or member 'ib_conn' not described in 'iser_post_send'
      ../drivers/infiniband/ulp/iser/iser_verbs.c:1040: warning: Function parameter or member 'tx_desc' not described in 'iser_post_send'
      
      Link: https://lore.kernel.org/r/20191010035240.070520193@gmail.comSigned-off-by: NRandy Dunlap <rd.dunlab@gmail.com>
      Reviewed-by: NJason Gunthorpe <jgg@mellanox.com>
      Signed-off-by: NJason Gunthorpe <jgg@mellanox.com>
      134a42a6
  3. 09 10月, 2019 1 次提交
  4. 01 10月, 2019 2 次提交
  5. 24 6月, 2019 3 次提交
  6. 22 11月, 2018 1 次提交
  7. 27 9月, 2018 1 次提交
  8. 25 7月, 2018 1 次提交
  9. 01 6月, 2018 1 次提交
  10. 29 9月, 2017 1 次提交
  11. 25 8月, 2017 1 次提交
  12. 11 7月, 2017 1 次提交
  13. 25 3月, 2017 1 次提交
  14. 19 2月, 2017 1 次提交
  15. 25 1月, 2017 1 次提交
  16. 15 12月, 2016 1 次提交
  17. 24 9月, 2016 2 次提交
  18. 05 3月, 2016 1 次提交
  19. 01 3月, 2016 1 次提交
  20. 27 12月, 2015 1 次提交
  21. 24 12月, 2015 2 次提交
  22. 23 12月, 2015 1 次提交
  23. 12 12月, 2015 3 次提交
  24. 08 12月, 2015 1 次提交
  25. 29 10月, 2015 2 次提交
  26. 08 10月, 2015 1 次提交
    • C
      IB: split struct ib_send_wr · e622f2f4
      Christoph Hellwig 提交于
      This patch split up struct ib_send_wr so that all non-trivial verbs
      use their own structure which embedds struct ib_send_wr.  This dramaticly
      shrinks the size of a WR for most common operations:
      
      sizeof(struct ib_send_wr) (old):	96
      
      sizeof(struct ib_send_wr):		48
      sizeof(struct ib_rdma_wr):		64
      sizeof(struct ib_atomic_wr):		96
      sizeof(struct ib_ud_wr):		88
      sizeof(struct ib_fast_reg_wr):		88
      sizeof(struct ib_bind_mw_wr):		96
      sizeof(struct ib_sig_handover_wr):	80
      
      And with Sagi's pending MR rework the fast registration WR will also be
      down to a reasonable size:
      
      sizeof(struct ib_fastreg_wr):		64
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Reviewed-by: Bart Van Assche <bart.vanassche@sandisk.com> [srp, srpt]
      Reviewed-by: Chuck Lever <chuck.lever@oracle.com> [sunrpc]
      Tested-by: NHaggai Eran <haggaie@mellanox.com>
      Tested-by: NSagi Grimberg <sagig@mellanox.com>
      Tested-by: NSteve Wise <swise@opengridcomputing.com>
      e622f2f4
  27. 25 9月, 2015 1 次提交
  28. 31 8月, 2015 5 次提交
    • J
      IB/core: Make ib_dealloc_pd return void · 7dd78647
      Jason Gunthorpe 提交于
      The majority of callers never check the return value, and even if they
      did, they can't do anything about a failure.
      
      All possible failure cases represent a bug in the caller, so just
      WARN_ON inside the function instead.
      
      This fixes a few random errors:
       net/rd/iw.c infinite loops while it fails. (racing with EBUSY?)
      
      This also lays the ground work to get rid of error return from the
      drivers. Most drivers do not error, the few that do are broken since
      it cannot be handled.
      
      Since uverbs can legitimately make use of EBUSY, open code the
      check.
      Signed-off-by: NJason Gunthorpe <jgunthorpe@obsidianresearch.com>
      Reviewed-by: NChuck Lever <chuck.lever@oracle.com>
      Signed-off-by: NDoug Ledford <dledford@redhat.com>
      7dd78647
    • J
      IB/iser: Use pd->local_dma_lkey · 256b7ad2
      Jason Gunthorpe 提交于
      Replace all leys with  pd->local_dma_lkey. This driver does not support
      iWarp, so this is safe.
      
      The insecure use of ib_get_dma_mr is thus isolated to an rkey, and this
      looks trivially fixed by forcing the use of registration in a future
      patch.
      Signed-off-by: NJason Gunthorpe <jgunthorpe@obsidianresearch.com>
      Reviewed-by: NSagi Grimberg <sagig@mellanox.com>
      Signed-off-by: NDoug Ledford <dledford@redhat.com>
      256b7ad2
    • S
      IB/iser: Chain all iser transaction send work requests · 7332bed0
      Sagi Grimberg 提交于
      Chaning of send work requests benefits performance by
      reducing the send queue lock contention (acquired in
      ib_post_send) and saves us HW doorbells which is posted
      only once.
      
      Currently, in normal IO flows iser does not chain the CDB send
      work request with the registration work request. Also in PI
      flows, signature work requests are not chained as well.
      
      Lets chain those and post only once.
      Signed-off-by: NSagi Grimberg <sagig@mellanox.com>
      Signed-off-by: NDoug Ledford <dledford@redhat.com>
      7332bed0
    • S
      IB/iser: Support up to 8MB data transfer in a single command · df749cdc
      Sagi Grimberg 提交于
      iser support up to 512KB data transfer in a single scsi command.
      This means that larger IOs will split to different request. While
      iser can easily saturate FDR/EDR wires, some arrays are fine tuned
      for 1MB (or larger) IO sizes, hence add an option to support larger
      transfers (up to 8MB) if the device allows it.
      
      Given that a few target implementations don't support data transfers
      of more than 512KB by default and the fact that larger IO sizes require
      more resources, we introduce a module parameter to determine the
      maximum number of 512B sectors in a single scsi command.
      Users that are interested in larger transfers can change this value given
      that the target supports larger transfers.
      
      At the moment, iser works in 4K pages granularity, In a later stage
      we will get it to work with system page size instead.
      
      IO operations that consists of N pages will need a page vector
      of size N+1 in case the first SG element contains an offset. Given
      that some devices allocates memory regions in powers of 2, this
      means that allocating a region with N+1 pages, will result in
      region resources allocation of the next power of 2. Since we don't
      want that to happen, in case we are in the limit of IO size supported
      and the first SG element has an offset, we align the SG list using a
      bounce buffer (which is OK given that this is not likely to happen a lot).
      Signed-off-by: NSagi Grimberg <sagig@mellanox.com>
      Signed-off-by: NDoug Ledford <dledford@redhat.com>
      df749cdc
    • S
      IB/iser: Pass registration pool a size parameter · f8db651d
      Sagi Grimberg 提交于
      Hard coded for now. This will allow to allocate different
      sized MRs depending on the IO size needed (and device
      capabilities).
      
      This patch does not change any functionality.
      Signed-off-by: NSagi Grimberg <sagig@mellanox.com>
      Signed-off-by: NDoug Ledford <dledford@redhat.com>
      f8db651d