From patchwork Thu Oct 30 15:40:56 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom Herbert X-Patchwork-Id: 405079 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 5A40E14009D for ; Fri, 31 Oct 2014 02:41:10 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934002AbaJ3PlE (ORCPT ); Thu, 30 Oct 2014 11:41:04 -0400 Received: from mail-pd0-f170.google.com ([209.85.192.170]:54248 "EHLO mail-pd0-f170.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933861AbaJ3PlB (ORCPT ); Thu, 30 Oct 2014 11:41:01 -0400 Received: by mail-pd0-f170.google.com with SMTP id z10so5363483pdj.15 for ; Thu, 30 Oct 2014 08:41:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=from:to:subject:date:message-id; bh=FkC/p/BYo/tZ4Dbmbr5JdEBndqfZFr87xvYCVCw/1GA=; b=mOu9Lye4exlMzd6HvTa8NW+8zq7xHe2zodZseNPewGQemhHfv7riPfRSi3TErngVm7 T8WDGA4aM/Mf+6ZEsxLb9/lCAS/cOjAk5WWCSdpPxBwuGUIpCBZnYUNr4xB3+UXMcQjN y28a9tGxYq+pNAkTbckzeRgUDiaDvb9xVfxNWcGy/nklpZ4QKz4AUg5WGSkD9sro2xNK sylOr2NGMAL42TYFGve2pNc2v+kE9ec1I0lX21QrreZByKKkur1j+abMXAqKyf3T9zSj zXVXvZD23KvIjaXz+AQJRjBt5p4sNM9iNs8BY2N+ESqCa82UnkuN56tqPwPvGfojdo9/ lfEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:subject:date:message-id; bh=FkC/p/BYo/tZ4Dbmbr5JdEBndqfZFr87xvYCVCw/1GA=; b=aLFkHbMuw1Au1x6CgEXwBpIhqHd2kw08Q/xA7cPHUuZKgp6Xflpw3KofN81RjiXcmj FvtsOWDxEQNIrHwrh85DkkgA6z/UpNUSGXGPgb+ASx+xdDkOxLENqRt7i2xthYRDnNzR QsBQeOB92je1U10yppZT2qfAQ4j/aL5DRrGQscGc0TXcl8hO7t1gCdZj14dBksxDNv+A OEmYVtN+QsBloGYBOc1TJqPILizOPUmNfR3gN9ePNLz4316FbvjcIA2QYpK86Qn+8/Jg rqPkk/6YQ/apKGJXvD2B+BkuH+WUJWoKKNwtDBfvhUwgjTVRk5YEck0zQav3otF8h837 sb0A== X-Gm-Message-State: ALoCoQlO2z6E5iPM9xKm0Kc6FyAWpcAKTHIu+w7Spg+KaeMJsAQdebwZDgqsQVOaoqb1KUpkgtcd X-Received: by 10.68.69.76 with SMTP id c12mr17845297pbu.59.1414683660849; Thu, 30 Oct 2014 08:41:00 -0700 (PDT) Received: from tomh.mtv.corp.google.com ([172.18.117.126]) by mx.google.com with ESMTPSA id sg5sm5693207pac.47.2014.10.30.08.40.59 for (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 30 Oct 2014 08:41:00 -0700 (PDT) From: Tom Herbert To: davem@davemloft.net, alexander.duyck@gmail.com, netdev@vger.kernel.org Subject: [PATCH net] gre: Use inner mac length when computing tunnel length Date: Thu, 30 Oct 2014 08:40:56 -0700 Message-Id: <1414683656-26493-1-git-send-email-therbert@google.com> X-Mailer: git-send-email 2.1.0.rc2.206.gedb03e5 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Currently, skb_inner_network_header is used but this does not account for Ethernet header for ETH_P_TEB. Use skb_inner_mac_header which handles TEB and also should work with IP encapsulation in which case inner mac and inner network headers are the same. Tested: Ran TCP_STREAM over GRE, worked as expected. Signed-off-by: Tom Herbert Acked-by: Alexander Duyck --- net/ipv4/gre_offload.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/ipv4/gre_offload.c b/net/ipv4/gre_offload.c index f6e345c..bb5947b 100644 --- a/net/ipv4/gre_offload.c +++ b/net/ipv4/gre_offload.c @@ -47,7 +47,7 @@ static struct sk_buff *gre_gso_segment(struct sk_buff *skb, greh = (struct gre_base_hdr *)skb_transport_header(skb); - ghl = skb_inner_network_header(skb) - skb_transport_header(skb); + ghl = skb_inner_mac_header(skb) - skb_transport_header(skb); if (unlikely(ghl < sizeof(*greh))) goto out;