netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Wolfgang Walter <linux@stwm.de>
To: Vlad Yasevich <vyasevich@gmail.com>
Cc: Cong Wang <xiyou.wangcong@gmail.com>,
	LKML <linux-kernel@vger.kernel.org>,
	Hannes Frederic Sowa <hannes@stressinduktion.org>,
	Linux Kernel Network Developers <netdev@vger.kernel.org>
Subject: Re: kernel >= 4.0: crashes when using traceroute6 with isatap
Date: Thu, 14 May 2015 02:32:24 +0200	[thread overview]
Message-ID: <1460179.Gl6yCv4mQ9@h2o.as.studentenwerk.mhn.de> (raw)
In-Reply-To: <5552602E.3060300@gmail.com>

Am Dienstag, 12. Mai 2015, 16:18:54 schrieb Vlad Yasevich:
> On 05/06/2015 06:11 PM, Wolfgang Walter wrote:
> > Am Mittwoch, 6. Mai 2015, 11:15:18 schrieben Sie:
> >> (Cc'ing netdev.)
> >> 
> >> On Sat, May 2, 2015 at 5:29 AM, Wolfgang Walter <linux@stwm.de> wrote:
> >>> Am Samstag, 2. Mai 2015, 02:16:36 schrieb Wolfgang Walter:
> >>>> Hello,
> >>>> 
> >>>> kernel 4.0 (and 4.0.1) crashes immediately when I use traceroute6 with
> >>>> an
> >>>> isatap-tunnel.
> >>> 
> >>> I did some further tests. To trigger the crash you need
> >>> 
> >>> * isatap-tunnel (probably any sit-tunnel will do it)
> >>> * raw-socket
> >>> * udp
> >>> 
> >>> Using icmpv6 or tcp i.e. does not trigger it.
> >> 
> >> Do you have a script to reproduce it?
> >> 
> >> 
> >> Thanks for the bug report!
> > 
> > You need a isatap-server with say ipv4-address $X
> > 
> > Then, on host with 4.0, start isatapd: isatapd --mtu 1280 $X
> > 
> > then do
> > 
> > 	traceroute6 www.google.de
> > 
> > Regards,
> 
> Hi Walter
> 
> Could you try this patch.  Looks like raw passes transhdrlen
> of 0 on the first packet and that makes IPv4 behave correctly,
> but not IPv6.
> 
> 
> diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c
> index 7fde1f2..fd9c079 100644
> --- a/net/ipv6/ip6_output.c
> +++ b/net/ipv6/ip6_output.c
> @@ -1278,7 +1278,7 @@ emsgsize:
>  	/* If this is the first and only packet and device
>  	 * supports checksum offloading, let's use it.
>  	 */
> -	if (!skb && sk->sk_protocol == IPPROTO_UDP &&
> +	if (transhdrlen && sk->sk_protocol == IPPROTO_UDP &&
>  	    length + fragheaderlen < mtu &&
>  	    rt->dst.dev->features & NETIF_F_V6_CSUM &&
>  	    !exthdrlen)

Ok, that works as fix. No crash and checksums are ok.

Regards,
-- 
Wolfgang Walter
Studentenwerk München
Anstalt des öffentlichen Rechts

  parent reply	other threads:[~2015-05-14  0:32 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1770409.aMESoOv08f@h2o.as.studentenwerk.mhn.de>
     [not found] ` <1958390.Ugr57PpLDS@h2o.as.studentenwerk.mhn.de>
2015-05-06 18:15   ` kernel >= 4.0: crashes when using traceroute6 with isatap Cong Wang
2015-05-06 19:10     ` Eric Dumazet
2015-05-06 22:04       ` Wolfgang Walter
2015-05-06 22:42         ` Eric Dumazet
2015-05-07  0:04           ` Wolfgang Walter
2015-05-12 16:34           ` Vlad Yasevich
2015-05-06 22:11     ` Wolfgang Walter
2015-05-12 20:18       ` Vlad Yasevich
2015-05-12 20:36         ` Eric Dumazet
2015-05-12 20:46           ` Vlad Yasevich
2015-05-14  0:32         ` Wolfgang Walter [this message]
     [not found] ` <1431002384.22756.0.camel@edumazet-glaptop2.roam.corp.google.com>
     [not found]   ` <12346713.ZyFExCo3ux@h2o.as.studentenwerk.mhn.de>
     [not found]     ` <2088438.42IY8hjjd5@h2o.as.studentenwerk.mhn.de>
     [not found]       ` <1431122268.22756.41.camel@edumazet-glaptop2.roam.corp.google.com>
2015-05-08 22:22         ` [PATCH net] Revert "ipv6: Allow for partial checksums on non-ufo packets" Eric Dumazet
2015-05-10 23:53           ` David Miller
2015-05-12 18:05           ` Vlad Yasevich
2015-05-12 19:07             ` Eric Dumazet
2015-05-06 18:14 kernel >= 4.0: crashes when using traceroute6 with isatap Cong Wang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1460179.Gl6yCv4mQ9@h2o.as.studentenwerk.mhn.de \
    --to=linux@stwm.de \
    --cc=hannes@stressinduktion.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=vyasevich@gmail.com \
    --cc=xiyou.wangcong@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).