From patchwork Sun Apr 1 20:28:13 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tal Gilboa X-Patchwork-Id: 894053 Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=mellanox.com Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 40Dn4f3KJ0z9s15 for ; Mon, 2 Apr 2018 06:28:50 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753895AbeDAU22 (ORCPT ); Sun, 1 Apr 2018 16:28:28 -0400 Received: from mail-il-dmz.mellanox.com ([193.47.165.129]:53651 "EHLO mellanox.co.il" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753901AbeDAU20 (ORCPT ); Sun, 1 Apr 2018 16:28:26 -0400 Received: from Internal Mail-Server by MTLPINE1 (envelope-from talgi@mellanox.com) with ESMTPS (AES256-SHA encrypted); 1 Apr 2018 23:29:22 +0300 Received: from gen-l-vrt-691.mtl.labs.mlnx (gen-l-vrt-691.mtl.labs.mlnx [10.141.69.1]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id w31KSMML024395; Sun, 1 Apr 2018 23:28:22 +0300 Received: from gen-l-vrt-691.mtl.labs.mlnx (localhost [127.0.0.1]) by gen-l-vrt-691.mtl.labs.mlnx (8.14.7/8.14.7) with ESMTP id w31KSMGt065003; Sun, 1 Apr 2018 23:28:22 +0300 Received: (from talgi@localhost) by gen-l-vrt-691.mtl.labs.mlnx (8.14.7/8.14.7/Submit) id w31KSK5u064997; Sun, 1 Apr 2018 23:28:20 +0300 From: Tal Gilboa To: "David S. Miller" Cc: netdev@vger.kernel.org, Tariq Toukan , Tal Gilboa , Saeed Mahameed , Florian Fainelli Subject: [PATCH net-next V1 0/4] Introduce adaptive TX interrupt moderation to net DIM Date: Sun, 1 Apr 2018 23:28:13 +0300 Message-Id: <1522614497-64957-1-git-send-email-talgi@mellanox.com> X-Mailer: git-send-email 1.8.3.1 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Net DIM is a library designed for dynamic interrupt moderation. It was implemented and optimized with receive side interrupts in mind, since these are usually the CPU expensive ones. This patch-set introduces adaptive transmit interrupt moderation to net DIM, complete with a usage in the mlx5e driver. Using adaptive TX behavior would reduce interrupt rate for multiple scenarios. Furthermore, it is essential for increasing bandwidth on cases where payload aggregation is required. In order to avoid conflicts, this patch-set is rebased over Florian Fainelli's "[PATCH net-next v2 3/3] net: bcmgenet: Fix coalescing settings handling" patch. v1: Fix compilation issues due to missed function renaming. Tal Gilboa (4): net/dim: Rename *_get_profile() functions to *_get_rx_moderation() net/dim: Add "enabled" field to net_dim struct net/dim: Support adaptive TX moderation net/mlx5e: Enable adaptive-TX moderation drivers/net/ethernet/broadcom/bcmsysport.c | 6 +- drivers/net/ethernet/broadcom/bnxt/bnxt_dim.c | 8 +-- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 6 +- drivers/net/ethernet/mellanox/mlx5/core/en.h | 5 +- drivers/net/ethernet/mellanox/mlx5/core/en_dim.c | 28 ++++++--- .../net/ethernet/mellanox/mlx5/core/en_ethtool.c | 35 +++++++---- drivers/net/ethernet/mellanox/mlx5/core/en_main.c | 34 ++++++++-- drivers/net/ethernet/mellanox/mlx5/core/en_rep.c | 2 +- drivers/net/ethernet/mellanox/mlx5/core/en_txrx.c | 37 ++++++++--- include/linux/net_dim.h | 72 +++++++++++++++++----- 10 files changed, 173 insertions(+), 60 deletions(-)