From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michael Chan Subject: [PATCH net-next v4 0/5] Introduce NETIF_F_GRO_HW Date: Mon, 11 Dec 2017 06:41:05 -0500 Message-ID: <1512992470-28861-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-f194.google.com ([209.85.216.194]:43573 "EHLO mail-qt0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750836AbdLKLlV (ORCPT ); Mon, 11 Dec 2017 06:41:21 -0500 Received: by mail-qt0-f194.google.com with SMTP id w10so37560171qtb.10 for ; Mon, 11 Dec 2017 03:41:21 -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. 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 | 8 +++++++ drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c | 19 ++++++++++------ drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c | 4 +++- 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 | 28 ++++++++++++++++++++++++ net/core/ethtool.c | 1 + 11 files changed, 100 insertions(+), 33 deletions(-) -- 1.8.3.1