1. 08 10月, 2016 18 次提交
  2. 24 9月, 2016 1 次提交
  3. 25 8月, 2016 1 次提交
  4. 23 8月, 2016 3 次提交
  5. 18 8月, 2016 1 次提交
  6. 17 8月, 2016 3 次提交
    • S
      net/mlx5: Unify and improve command interface · c4f287c4
      Saeed Mahameed 提交于
      Now as all commands use mlx5 ifc interface, instead of doing two calls
      for executing a command we embed command status checking into
      mlx5_cmd_exec to simplify the interface.
      
      Also we do here some cleanup for redundant software structures
      (inbox/outbox) and functions and improved command failure output.
      Signed-off-by: NSaeed Mahameed <saeedm@mellanox.com>
      Signed-off-by: NLeon Romanovsky <leon@kernel.org>
      c4f287c4
    • S
      {net,IB}/mlx5: Modify QP commands via mlx5 ifc · 1a412fb1
      Saeed Mahameed 提交于
      Prior to this patch we assumed that modify QP commands have the
      same layout.
      
      In ConnectX-4 for each QP transition there is a specific command
      and their layout can vary.
      
      e.g: 2err/2rst commands don't have QP context in their layout and before
      this patch we posted the QP context in those commands.
      
      Fortunately the FW only checks the suffix of the commands and executes
      them, while ignoring all invalid data sent after the valid command
      layout.
      
      This patch removes mlx5_modify_qp_mbox_in and changes
      mlx5_core_qp_modify to receive the required transition and QP context
      with opt_param_mask if needed.  This way the caller is not required to
      provide the command inbox layout and it will be generated automatically.
      
      mlx5_core_qp_modify will generate the command inbox/outbox layouts
      according to the requested transition and will fill the requested
      parameters.
      Signed-off-by: NSaeed Mahameed <saeedm@mellanox.com>
      Signed-off-by: NLeon Romanovsky <leon@kernel.org>
      1a412fb1
    • S
      {net,IB}/mlx5: QP/XRCD commands via mlx5 ifc · 09a7d9ec
      Saeed Mahameed 提交于
      Remove old representation of manually created QP/XRCD commands layout
      amd use mlx5_ifc canonical structures and defines.
      Signed-off-by: NSaeed Mahameed <saeedm@mellanox.com>
      Signed-off-by: NLeon Romanovsky <leon@kernel.org>
      09a7d9ec
  7. 14 8月, 2016 2 次提交
  8. 04 8月, 2016 6 次提交
    • M
      IB/mthca: Clean up error unwind flow in mthca_reset() · 380bae5b
      Markus Elfring 提交于
      The kfree() function was called in a few cases by the mthca_reset()
      function during error handling even if the passed variables "bridge_header"
      and "hca_header" contained a null pointer.
      
      Adjust jump targets according to the Linux coding style convention.
      Signed-off-by: NMarkus Elfring <elfring@users.sourceforge.net>
      Reviewed-by: NLeon Romanovsky <leonro@mellanox.com>
      Signed-off-by: NDoug Ledford <dledford@redhat.com>
      380bae5b
    • M
      IB/mthca: NULL arg to pci_dev_put is OK · 3491ab63
      Markus Elfring 提交于
      The pci_dev_put() function tests whether its argument is NULL and then
      returns immediately. Thus the test around the call is not needed.
      
      This issue was detected by using the Coccinelle software.
      Signed-off-by: NMarkus Elfring <elfring@users.sourceforge.net>
      Reviewed-by: NLeon Romanovsky <leonro@mellanox.com>
      Signed-off-by: NDoug Ledford <dledford@redhat.com>
      3491ab63
    • M
      IB/hfi1: NULL arg to sc_return_credits is OK · f7ca535b
      Markus Elfring 提交于
      The sc_return_credits() function tests whether its argument is NULL
      and then returns immediately. Thus the test around the call is not needed.
      
      This issue was detected by using the Coccinelle software.
      Signed-off-by: NMarkus Elfring <elfring@users.sourceforge.net>
      Signed-off-by: NDoug Ledford <dledford@redhat.com>
      f7ca535b
    • M
      IB/mlx4: Add diagnostic hardware counters · 3f85f2aa
      Mark Bloch 提交于
      Expose IB diagnostic hardware counters.
      The counters count IB events and are applicable for IB and RoCE.
      
      The counters can be divided into two groups, per device and per port.
      Device counters are always exposed.
      Port counters are exposed only if the firmware supports per port counters.
      
      rq_num_dup and sq_num_to are only exposed if we have firmware support
      for them, if we do, we expose them per device and per port.
      rq_num_udsdprd and num_cqovf are device only counters.
      
      rq - denotes responder.
      sq - denotes requester.
      
      |-----------------------|---------------------------------------|
      |	Name		|	Description			|
      |-----------------------|---------------------------------------|
      |rq_num_lle		| Number of local length errors		|
      |-----------------------|---------------------------------------|
      |sq_num_lle		| number of local length errors		|
      |-----------------------|---------------------------------------|
      |rq_num_lqpoe		| Number of local QP operation errors	|
      |-----------------------|---------------------------------------|
      |sq_num_lqpoe		| Number of local QP operation errors	|
      |-----------------------|---------------------------------------|
      |rq_num_lpe		| Number of local protection errors	|
      |-----------------------|---------------------------------------|
      |sq_num_lpe		| Number of local protection errors	|
      |-----------------------|---------------------------------------|
      |rq_num_wrfe		| Number of CQEs with error		|
      |-----------------------|---------------------------------------|
      |sq_num_wrfe		| Number of CQEs with error		|
      |-----------------------|---------------------------------------|
      |sq_num_mwbe		| Number of Memory Window bind errors	|
      |-----------------------|---------------------------------------|
      |sq_num_bre		| Number of bad response errors		|
      |-----------------------|---------------------------------------|
      |sq_num_rire		| Number of Remote Invalid request	|
      |			| errors				|
      |-----------------------|---------------------------------------|
      |rq_num_rire		| Number of Remote Invalid request	|
      |			| errors				|
      |-----------------------|---------------------------------------|
      |sq_num_rae		| Number of remote access errors	|
      |-----------------------|---------------------------------------|
      |rq_num_rae		| Number of remote access errors	|
      |-----------------------|---------------------------------------|
      |sq_num_roe		| Number of remote operation errors	|
      |-----------------------|---------------------------------------|
      |sq_num_tree		| Number of transport retries exceeded	|
      |			| errors				|
      |-----------------------|---------------------------------------|
      |sq_num_rree		| Number of RNR NAK retries exceeded	|
      |			| errors				|
      |-----------------------|---------------------------------------|
      |rq_num_rnr		| Number of RNR NAKs sent		|
      |-----------------------|---------------------------------------|
      |sq_num_rnr		| Number of RNR NAKs received		|
      |-----------------------|---------------------------------------|
      |rq_num_oos		| Number of Out of Sequence requests	|
      |			| received				|
      |-----------------------|---------------------------------------|
      |sq_num_oos		| Number of Out of Sequence NAKs	|
      |			| received				|
      |-----------------------|---------------------------------------|
      |rq_num_udsdprd		| Number of UD packets silently		|
      |			| discarded on the Receive Queue due to	|
      |			| lack of receive descriptor		|
      |-----------------------|---------------------------------------|
      |rq_num_dup		| Number of duplicate requests received	|
      |-----------------------|---------------------------------------|
      |sq_num_to		| Number of time out received		|
      |-----------------------|---------------------------------------|
      |num_cqovf		| Number of CQ overflows		|
      |-----------------------|---------------------------------------|
      Signed-off-by: NMark Bloch <markb@mellanox.com>
      Signed-off-by: NLeon Romanovsky <leon@kernel.org>
      Signed-off-by: NDoug Ledford <dledford@redhat.com>
      3f85f2aa
    • R
      IB/mlx4: Don't use GFP_ATOMIC for CQ resize struct · 0c87b672
      Roland Dreier 提交于
      We allocate a small tracking structure as part of mlx4_ib_resize_cq().
      However, we don't need to use GFP_ATOMIC -- immediately after the
      allocation, we call mlx4_cq_resize(), which allocates a command
      mailbox with GFP_KERNEL and then sleeps on a firmware command, so we
      better not be in an atomic context.
      
      This actually has a real impact, because when this GFP_ATOMIC
      allocation fails (and GFP_ATOMIC does fail in practice) then a
      userspace consumer resizing a CQ will get a spurious failure that we
      can easily avoid.
      Signed-off-by: NRoland Dreier <roland@purestorage.com>
      Reviewed-by: NLeon Romanovsky <leonro@mellanox.com>
      Signed-off-by: NDoug Ledford <dledford@redhat.com>
      0c87b672
    • B
      IB/hfi1: Disable by default · a154a8cd
      Bart Van Assche 提交于
      There is a strict policy in the Linux kernel that new drivers must be
      disabled by default. Hence leave out the "default m" line from Kconfig.
      
      Fixes: f48ad614 ("IB/hfi1: Move driver out of staging")
      Signed-off-by: NBart Van Assche <bart.vanassche@sandisk.com>
      Cc: Jubin John <jubin.john@intel.com>
      Cc: Dennis Dalessandro <dennis.dalessandro@intel.com>
      Cc: Ira Weiny <ira.weiny@intel.com>
      Cc: Mike Marciniszyn <mike.marciniszyn@intel.com>
      Cc: <stable@vger.kernel.org> # v4.7+
      Acked-by: NDennis Dalessandro <dennis.dalessandro@intel.com>
      Signed-off-by: NDoug Ledford <dledford@redhat.com>
      a154a8cd
  9. 03 8月, 2016 5 次提交