1. 16 6月, 2017 3 次提交
  2. 15 6月, 2017 6 次提交
  3. 14 6月, 2017 16 次提交
  4. 13 6月, 2017 1 次提交
    • J
      i40e: fix handling of HW ATR eviction · 6964e53f
      Jacob Keller 提交于
      A recent commit to refactor the driver and remove the hw_disabled_flags
      field accidentally introduced two regressions. First, we overwrote
      pf->flags which removed various key flags including the MSI-X settings.
      
      Additionally, it was intended that we have now two flags,
      HW_ATR_EVICT_CAPABLE and HW_ATR_EVICT_ENABLED, but this was not done,
      and we accidentally were mis-using HW_ATR_EVICT_CAPABLE everywhere.
      
      This patch adds the missing piece, HW_ATR_EVICT_ENABLED, and safely
      updates pf->flags instead of overwriting it.
      
      Without this patch we will have many problems including disabling MSI-X
      support, and we'll attempt to use HW ATR eviction on devices which do
      not support it.
      
      Fixes: 47994c11 ("i40e: remove hw_disabled_flags in favor of using separate flag bits", 2017-04-19)
      Signed-off-by: NJacob Keller <jacob.e.keller@intel.com>
      Tested-by: NAndrew Bowers <andrewx.bowers@intel.com>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6964e53f
  5. 12 6月, 2017 10 次提交
  6. 11 6月, 2017 4 次提交
    • M
      net/mlx5: Enable 4K UAR only when page size is bigger than 4K · 91828bd8
      Majd Dibbiny 提交于
      When the page size isn't bigger than 4K, there is no added value of enabling 4K
      UAR feature in the Firmware.
      
      Modified the condition of enabling the 4K UAR accordingly.
      
      Fixes: f502d834 ("net/mlx5: Activate support for 4K UARs")
      Signed-off-by: NMajd Dibbiny <majd@mellanox.com>
      Signed-off-by: NSaeed Mahameed <saeedm@mellanox.com>
      91828bd8
    • T
      net/mlx5e: Fix wrong indications in DIM due to counter wraparound · 53acd76c
      Tal Gilboa 提交于
      DIM (Dynamically-tuned Interrupt Moderation) is a mechanism designed for
      changing the channel interrupt moderation values in order to reduce CPU
      overhead for all traffic types.
      Each iteration of the algorithm, DIM calculates the difference in
      throughput, packet rate and interrupt rate from last iteration in order
      to make a decision. DIM relies on counters for each metric. When these
      counters get to their type's max value they wraparound. In this case
      the delta between 'end' and 'start' samples is negative and when
      translated to unsigned integers - very high. This results in a false
      indication to the algorithm and might result in a wrong decision.
      
      The fix calculates the 'distance' between 'end' and 'start' samples in a
      cyclic way around the relevant type's max value. It can also be viewed as
      an absolute value around the type's max value instead of around 0.
      
      Testing show higher stability in DIM profile selection and no wraparound
      issues.
      
      Fixes: cb3c7fd4 ("net/mlx5e: Support adaptive RX coalescing")
      Signed-off-by: NTal Gilboa <talgi@mellanox.com>
      Signed-off-by: NSaeed Mahameed <saeedm@mellanox.com>
      53acd76c
    • T
      net/mlx5e: Added BW check for DIM decision mechanism · c3164d2f
      Tal Gilboa 提交于
      DIM (Dynamically-tuned Interrupt Moderation) is a mechanism designed for
      changing the channel interrupt moderation values in order to reduce CPU
      overhead for all traffic types.
      Until now only interrupt and packet rate were sampled.
      We found a scenario on which we get a false indication since a change in
      DIM caused more aggregation and reduced packet rate while increasing BW.
      
      We now regard a change as succesfull iff:
      current_BW > (prev_BW + threshold) or
      current_BW ~= prev_BW and current_PR > (prev_PR + threshold) or
      current_BW ~= prev_BW and current_PR ~= prev_PR and
          current_IR < (prev_IR - threshold)
      Where BW = Bandwidth, PR = Packet rate and IR = Interrupt rate
      
      Improvements (ConnectX-4Lx 25GbE, single RX queue, LRO off)
          --------------------------------------------------
          packet size | before[Mb/s] | after[Mb/s] | gain  |
          2B          | 343.4        | 359.4       |  4.5% |
          16B         | 2739.7       | 2814.8      |  2.7% |
          64B         | 9739         | 10185.3     |  4.5% |
      
      Fixes: cb3c7fd4 ("net/mlx5e: Support adaptive RX coalescing")
      Signed-off-by: NTal Gilboa <talgi@mellanox.com>
      Signed-off-by: NSaeed Mahameed <saeedm@mellanox.com>
      c3164d2f
    • H
      net/mlx5: Remove several module events out of ethtool stats · f729860a
      Huy Nguyen 提交于
      Remove the following module event counters out of ethtool stats. The
      reason for removing these event counters is that these events do not
      occur without techinician's intervention.
        module_pwr_budget_exd
        module_long_range
        module_no_eeprom
        module_enforce_part
        module_unknown_id
        module_unknown_status
        module_plug
      
      Fixes: bedb7c90 ("net/mlx5e: Add port module event counters to ethtool stats")
      Signed-off-by: NHuy Nguyen <huyn@mellanox.com>
      Reviewed by: Gal Pressman <galp@mellanox.com>
      Signed-off-by: NSaeed Mahameed <saeedm@mellanox.com>
      f729860a