1. 01 4月, 2021 1 次提交
  2. 31 3月, 2021 1 次提交
  3. 31 8月, 2020 1 次提交
  4. 17 7月, 2020 2 次提交
  5. 23 6月, 2020 1 次提交
  6. 02 4月, 2019 1 次提交
  7. 20 2月, 2019 1 次提交
    • J
      RDMA/rxe: Use driver_unregister and new unregistration API · c367074b
      Jason Gunthorpe 提交于
      rxe does not have correct locking for its registration/unregistration
      paths, use the core code to handle it instead. In this mode
      ib_unregister_device will also do the dealloc, so rxe is required to do
      clean up from a callback.
      
      The core code ensures that unregistration is done only once, and generally
      takes care of locking and concurrency problems for rxe.
      Signed-off-by: NJason Gunthorpe <jgg@mellanox.com>
      c367074b
  8. 05 2月, 2019 1 次提交
  9. 22 1月, 2019 1 次提交
  10. 19 12月, 2018 1 次提交
  11. 09 11月, 2018 1 次提交
  12. 17 10月, 2018 1 次提交
    • N
      IB/rxe: Remove unnecessary enum values · 0797e6f1
      Nathan Chancellor 提交于
      Clang warns when an emumerated type is implicitly converted to another.
      
      drivers/infiniband/sw/rxe/rxe.c:106:27: warning: implicit conversion
      from enumeration type 'enum rxe_device_param' to different enumeration
      type 'enum ib_atomic_cap' [-Wenum-conversion]
              rxe->attr.atomic_cap                    = RXE_ATOMIC_CAP;
                                                      ~ ^~~~~~~~~~~~~~
      drivers/infiniband/sw/rxe/rxe.c:131:22: warning: implicit conversion
      from enumeration type 'enum rxe_port_param' to different enumeration
      type 'enum ib_port_state' [-Wenum-conversion]
              port->attr.state                = RXE_PORT_STATE;
                                              ~ ^~~~~~~~~~~~~~
      drivers/infiniband/sw/rxe/rxe.c:132:24: warning: implicit conversion
      from enumeration type 'enum rxe_port_param' to different enumeration
      type 'enum ib_mtu' [-Wenum-conversion]
              port->attr.max_mtu              = RXE_PORT_MAX_MTU;
                                              ~ ^~~~~~~~~~~~~~~~
      drivers/infiniband/sw/rxe/rxe.c:133:27: warning: implicit conversion
      from enumeration type 'enum rxe_port_param' to different enumeration
      type 'enum ib_mtu' [-Wenum-conversion]
              port->attr.active_mtu           = RXE_PORT_ACTIVE_MTU;
                                              ~ ^~~~~~~~~~~~~~~~~~~
      drivers/infiniband/sw/rxe/rxe.c:151:24: warning: implicit conversion
      from enumeration type 'enum rxe_port_param' to different enumeration
      type 'enum ib_mtu' [-Wenum-conversion]
                                      ib_mtu_enum_to_int(RXE_PORT_ACTIVE_MTU);
                                      ~~~~~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~~~~~
      5 warnings generated.
      
      Use the appropriate values from the expected enumerated type so no
      conversion needs to happen then remove the unneeded definitions.
      Reported-by: NNick Desaulniers <ndesaulniers@google.com>
      Signed-off-by: NNathan Chancellor <natechancellor@gmail.com>
      Reviewed-by: NNick Desaulniers <ndesaulniers@google.com>
      Signed-off-by: NJason Gunthorpe <jgg@mellanox.com>
      0797e6f1
  13. 31 8月, 2018 1 次提交
  14. 19 6月, 2018 1 次提交
  15. 28 4月, 2018 2 次提交
  16. 16 3月, 2018 2 次提交
  17. 08 3月, 2018 1 次提交
  18. 01 2月, 2018 6 次提交
  19. 19 1月, 2018 1 次提交
    • B
      RDMA/rxe: Fix a race condition in rxe_requester() · 65567e41
      Bart Van Assche 提交于
      The rxe driver works as follows:
      * The send queue, receive queue and completion queues are implemented as
        circular buffers.
      * ib_post_send() and ib_post_recv() calls are serialized through a spinlock.
      * Removing elements from various queues happens from tasklet
        context. Tasklets are guaranteed to run on at most one CPU. This serializes
        access to these queues. See also rxe_completer(), rxe_requester() and
        rxe_responder().
      * rxe_completer() processes the skbs queued onto qp->resp_pkts.
      * rxe_requester() handles the send queue (qp->sq.queue).
      * rxe_responder() processes the skbs queued onto qp->req_pkts.
      
      Since rxe_drain_req_pkts() processes qp->req_pkts, calling
      rxe_drain_req_pkts() from rxe_requester() is racy. Hence this patch.
      Reported-by: NMoni Shoua <monis@mellanox.com>
      Signed-off-by: NBart Van Assche <bart.vanassche@wdc.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: NDoug Ledford <dledford@redhat.com>
      65567e41
  20. 26 10月, 2017 1 次提交
    • K
      IB/rxe: Convert timers to use timer_setup() · 3bfbea74
      Kees Cook 提交于
      In preparation for unconditionally passing the struct timer_list pointer to
      all timer callbacks, switch to using the new timer_setup() and from_timer()
      to pass the timer pointer explicitly.
      
      Cc: Moni Shoua <monis@mellanox.com>
      Cc: Doug Ledford <dledford@redhat.com>
      Cc: Sean Hefty <sean.hefty@intel.com>
      Cc: Hal Rosenstock <hal.rosenstock@gmail.com>
      Cc: linux-rdma@vger.kernel.org
      Signed-off-by: NKees Cook <keescook@chromium.org>
      Signed-off-by: NDoug Ledford <dledford@redhat.com>
      3bfbea74
  21. 29 8月, 2017 2 次提交
  22. 24 7月, 2017 1 次提交
  23. 02 5月, 2017 1 次提交
  24. 26 4月, 2017 1 次提交
  25. 21 4月, 2017 1 次提交
    • Y
      IB/rxe: Add port protocol stats · 0b1e5b99
      Yonatan Cohen 提交于
      Expose new counters using the get_hw_stats callback.
      We expose the following counters:
      
      +---------------------+----------------------------------------+
      |      Name           |           Description                  |
      |---------------------+----------------------------------------|
      |sent_pkts            | number of sent pkts                    |
      |---------------------+----------------------------------------|
      |rcvd_pkts            | number of received packets             |
      |---------------------+----------------------------------------|
      |out_of_sequence      | number of errors due to packet         |
      |                     | transport sequence number              |
      |---------------------+----------------------------------------|
      |duplicate_request    | number of received duplicated packets. |
      |                     | A request that previously executed is  |
      |                     | named duplicated.                      |
      |---------------------+----------------------------------------|
      |rcvd_rnr_err         | number of received RNR by completer    |
      |---------------------+----------------------------------------|
      |send_rnr_err         | number of sent RNR by responder        |
      |---------------------+----------------------------------------|
      |rcvd_seq_err         | number of out of sequence packets      |
      |                     | received                               |
      |---------------------+----------------------------------------|
      |ack_deffered         | number of deferred handling of ack     |
      |                     | packets.                               |
      |---------------------+----------------------------------------|
      |retry_exceeded_err   | number of times retry exceeded         |
      |---------------------+----------------------------------------|
      |completer_retry_err  | number of times completer decided to   |
      |                     | retry                                  |
      |---------------------+----------------------------------------|
      |send_err             | number of failed send packet           |
      +---------------------+----------------------------------------+
      Signed-off-by: NYonatan Cohen <yonatanc@mellanox.com>
      Reviewed-by: NMoni Shoua <monis@mellanox.com>
      Reviewed-by: NAndrew Boyer <andrew.boyer@dell.com>
      Signed-off-by: NLeon Romanovsky <leon@kernel.org>
      Signed-off-by: NDoug Ledford <dledford@redhat.com>
      0b1e5b99
  26. 25 1月, 2017 1 次提交
  27. 11 1月, 2017 3 次提交
  28. 13 12月, 2016 1 次提交
  29. 07 10月, 2016 1 次提交