From patchwork Thu Feb 21 22:30:05 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Kravkov X-Patchwork-Id: 222428 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 861E62C0293 for ; Fri, 22 Feb 2013 09:30:18 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757100Ab3BUWaN (ORCPT ); Thu, 21 Feb 2013 17:30:13 -0500 Received: from mms1.broadcom.com ([216.31.210.17]:3448 "EHLO mms1.broadcom.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756142Ab3BUWaM (ORCPT ); Thu, 21 Feb 2013 17:30:12 -0500 Received: from [10.9.208.57] by mms1.broadcom.com with ESMTP (Broadcom SMTP Relay (Email Firewall v6.5)); Thu, 21 Feb 2013 14:27:54 -0800 X-Server-Uuid: 06151B78-6688-425E-9DE2-57CB27892261 Received: from IRVEXCHSMTP3.corp.ad.broadcom.com (10.9.207.53) by IRVEXCHCAS08.corp.ad.broadcom.com (10.9.208.57) with Microsoft SMTP Server (TLS) id 14.1.438.0; Thu, 21 Feb 2013 14:29:57 -0800 Received: from mail-irva-13.broadcom.com (10.10.10.20) by IRVEXCHSMTP3.corp.ad.broadcom.com (10.9.207.53) with Microsoft SMTP Server id 14.1.438.0; Thu, 21 Feb 2013 14:29:57 -0800 Received: from [10.185.7.55] (lb-tlvb-dmitry.il.broadcom.com [10.185.7.55]) by mail-irva-13.broadcom.com (Postfix) with ESMTP id C718240FF7; Thu, 21 Feb 2013 14:29:54 -0800 (PST) Message-ID: <1361485805.21950.6.camel@lb-tlvb-dmitry> Subject: Re: [PATCH net-next v2 2/2] ip_gre: propogate target device GSO capability to the tunnel device From: "Dmitry Kravkov" To: pravin cc: davem@davemloft.net, netdev@vger.kernel.org Date: Fri, 22 Feb 2013 00:30:05 +0200 In-Reply-To: References: <1361217053-16984-1-git-send-email-dmitry@broadcom.com> <1361217053-16984-2-git-send-email-dmitry@broadcom.com> X-Mailer: Evolution 3.2.3-0ubuntu6 MIME-Version: 1.0 X-WSS-ID: 7D3840E023C1922596-01-01 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org On Tue, 2013-02-19 at 10:39 -0800, pravin wrote: > On Mon, Feb 18, 2013 at 11:50 AM, Dmitry Kravkov wrote: > > > > Signed-off-by: Dmitry Kravkov > > --- > > Changes from v1: fixed email address > > > > > > net/ipv4/ip_gre.c | 10 ++++++++-- > > 1 files changed, 8 insertions(+), 2 deletions(-) > > > > diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c > > index cdc31ac..31bc941 100644 > > --- a/net/ipv4/ip_gre.c > > +++ b/net/ipv4/ip_gre.c > > @@ -1103,8 +1103,14 @@ static int ipgre_tunnel_bind_dev(struct net_device *dev) > > tunnel->hlen = addend; > > /* TCP offload with GRE SEQ is not supported. */ > > if (!(tunnel->parms.o_flags & GRE_SEQ)) { > > - dev->features |= NETIF_F_GSO_SOFTWARE; > > - dev->hw_features |= NETIF_F_GSO_SOFTWARE; > > + /* device supports enc gso offload*/ > > + if (tdev->hw_enc_features & NETIF_F_GRE_GSO) { > > + dev->features |= NETIF_F_TSO; > > + dev->hw_features |= NETIF_F_TSO; > > + } else { > > + dev->features |= NETIF_F_GSO_SOFTWARE; > > + dev->hw_features |= NETIF_F_GSO_SOFTWARE; > > + } > > } > > I am not sure about this change, Are you trying to limit GRE TSO to > just IPV4 in case of GRE offload in hardware? This mostly reverts previous patch, but also disables GSO when CSUM is set. --- net/ipv4/ip_gre.c | 14 ++++---------- 1 files changed, 4 insertions(+), 10 deletions(-) return mtu; diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c index 0de54cd..aae2d4b 100644 --- a/net/ipv4/ip_gre.c +++ b/net/ipv4/ip_gre.c @@ -1107,16 +1107,10 @@ static int ipgre_tunnel_bind_dev(struct net_device *dev) mtu = 68; tunnel->hlen = addend; - /* TCP offload with GRE SEQ is not supported. */ - if (!(tunnel->parms.o_flags & GRE_SEQ)) { - /* device supports enc gso offload*/ - if (tdev->hw_enc_features & NETIF_F_GRE_GSO) { - dev->features |= NETIF_F_TSO; - dev->hw_features |= NETIF_F_TSO; - } else { - dev->features |= NETIF_F_GSO_SOFTWARE; - dev->hw_features |= NETIF_F_GSO_SOFTWARE; - } + /* TCP offload with GRE SEQ or CSUM is not supported. */ + if (!(tunnel->parms.o_flags & (GRE_SEQ|GRE_CSUM))) { + dev->features |= NETIF_F_GSO_SOFTWARE; + dev->hw_features |= NETIF_F_GSO_SOFTWARE; }