From patchwork Wed Jan 18 13:44:09 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Eric Dumazet X-Patchwork-Id: 136612 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 D07401007DE for ; Thu, 19 Jan 2012 00:44:19 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757514Ab2ARNoO (ORCPT ); Wed, 18 Jan 2012 08:44:14 -0500 Received: from mail-wi0-f174.google.com ([209.85.212.174]:36061 "EHLO mail-wi0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757397Ab2ARNoN (ORCPT ); Wed, 18 Jan 2012 08:44:13 -0500 Received: by wibhm6 with SMTP id hm6so2204670wib.19 for ; Wed, 18 Jan 2012 05:44:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=message-id:subject:from:to:cc:date:in-reply-to:references :content-type:x-mailer:content-transfer-encoding:mime-version; bh=dgTQItkuWKA8NRPAG0Gk2hpWrOoft36mk9f0ZUl0oRg=; b=TPCWd2X3X1D+By6G8bf85gYXFZZSKUtB4L711k8+VkJHYWlyqMifMQ7ffj1KwqWhGr 5a5ZAziIVviM+Rg884bI2uffsvwtfj9FwPkbjFZJpPnJMWbvZe2p8jXTN+s4g9GEU4Zp oxZZk9BxfgYWZzP8sjBbdFc1tbqbQsQsoM3Lo= Received: by 10.180.83.104 with SMTP id p8mr31548517wiy.4.1326894252269; Wed, 18 Jan 2012 05:44:12 -0800 (PST) Received: from [10.150.51.214] (gw0.net.jmsp.net. [212.23.165.14]) by mx.google.com with ESMTPS id hv1sm22542790wib.1.2012.01.18.05.44.10 (version=SSLv3 cipher=OTHER); Wed, 18 Jan 2012 05:44:11 -0800 (PST) Message-ID: <1326894249.2316.8.camel@edumazet-HP-Compaq-6005-Pro-SFF-PC> Subject: Re: Bugzilla 42595 From: Eric Dumazet To: Tore Anderson Cc: netdev Date: Wed, 18 Jan 2012 14:44:09 +0100 In-Reply-To: <1326884311.2316.5.camel@edumazet-HP-Compaq-6005-Pro-SFF-PC> References: <1326817699.2259.32.camel@edumazet-HP-Compaq-6005-Pro-SFF-PC> <4F15D417.4050005@fud.no> <1326843827.2606.35.camel@edumazet-laptop> <1326884311.2316.5.camel@edumazet-HP-Compaq-6005-Pro-SFF-PC> X-Mailer: Evolution 3.2.1- Mime-Version: 1.0 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Le mercredi 18 janvier 2012 à 11:58 +0100, Eric Dumazet a écrit : > Le mercredi 18 janvier 2012 à 00:43 +0100, Eric Dumazet a écrit : > > Le mardi 17 janvier 2012 à 21:03 +0100, Tore Anderson a écrit : > > > > > > > > 3) There seems to be a bug related to generating the TCP checksum of > > > SYN/ACK packets to destinations with the allfrag features set. I just > > > submitted a bug report about this: > > > > > > https://bugzilla.kernel.org/show_bug.cgi?id=42595 > > > > > > This makes the allfrag feature pretty much useless for me, as I can only > > > successfully establish a single TCP session from a client behind a <1280 > > > MTU link for the entire lifetime of the routing cache entry. > > > > > > > It seems we dont handle skb ip_summed CHECKSUM_PARTIAL > > in ip6_fragment() slow_path > > > and many drivers dont handle the presence of a frag header. > > if (ipv6_hdr(skb)->nexthdr == IPPROTO_TCP) > > I suspect we'll have to compute the checksum in software... > Following patch seems to help for me, please test it ;) --- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c index d97e071..92ea301 100644 --- a/net/ipv6/ip6_output.c +++ b/net/ipv6/ip6_output.c @@ -791,6 +791,10 @@ slow_path_clean: } slow_path: + if ((skb->ip_summed == CHECKSUM_PARTIAL) && + skb_checksum_help(skb)) + goto fail; + left = skb->len - hlen; /* Space per frame */ ptr = hlen; /* Where to start from */