From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michael Chan Subject: [PATCH net-next v5 0/5] Introduce NETIF_F_GRO_HW Date: Sat, 16 Dec 2017 03:09:39 -0500 Message-ID: <1513411784-17653-1-git-send-email-michael.chan@broadcom.com> Cc: netdev@vger.kernel.org, andrew.gospodarek@broadcom.com To: davem@davemloft.net Return-path: Received: from mail-qt0-f196.google.com ([209.85.216.196]:41158 "EHLO mail-qt0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750883AbdLPIJ6 (ORCPT ); Sat, 16 Dec 2017 03:09:58 -0500 Received: by mail-qt0-f196.google.com with SMTP id i40so14786074qti.8 for ; Sat, 16 Dec 2017 00:09:58 -0800 (PST) Sender: netdev-owner@vger.kernel.org List-ID: Introduce NETIF_F_GRO_HW feature flag and convert drivers that support hardware GRO to use the new flag. v5: - Documentation changes requested by Alexander Duyck. - bnx2x changes requested by Manish Chopra to enable LRO by default, and disable GRO_HW if disable_tpa module parameter is set. v4: - more changes requested by Alexander Duyck: - check GRO_HW/GRO dependency in drivers's ndo_fix_features(). - Reverse the order of RXCSUM and GRO_HW dependency check in netdev_fix_features(). - No propagation in netdev_disable_gro_hw(). v3: - Let driver's ndo_fix_features() disable NETIF_F_LRO when NETIF_F_GRO_HW is set instead of doing it in common netdev_fix_features(). v2: - NETIF_F_GRO_HW flag propagation between upper and lower devices not required (see patch 1). - NETIF_F_GRO_HW depends on NETIF_F_GRO and NETIF_F_RXCSUM. - Add dev_disable_gro_hw() to disable GRO_HW for generic XDP. - Use ndo_fix_features() on all 3 drivers to drop GRO_HW when it is not supported Michael Chan (5): net: Introduce NETIF_F_GRO_HW. net: Disable GRO_HW when generic XDP is installed on a device. bnxt_en: Use NETIF_F_GRO_HW. bnx2x: Use NETIF_F_GRO_HW. qede: Use NETIF_F_GRO_HW. Documentation/networking/netdev-features.txt | 9 +++++++ drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c | 24 +++++++++---------- drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c | 8 ++++--- drivers/net/ethernet/broadcom/bnxt/bnxt.c | 27 +++++++++++++++------ drivers/net/ethernet/qlogic/qede/qede.h | 2 ++ drivers/net/ethernet/qlogic/qede/qede_ethtool.c | 3 +++ drivers/net/ethernet/qlogic/qede/qede_filter.c | 21 +++++++++++------ drivers/net/ethernet/qlogic/qede/qede_main.c | 17 +++++--------- include/linux/netdev_features.h | 3 +++ net/core/dev.c | 30 ++++++++++++++++++++++++ net/core/ethtool.c | 1 + 11 files changed, 105 insertions(+), 40 deletions(-) -- 1.8.3.1