From: Doug Kehn <rdkehn@yahoo.com>
To: Eric Dumazet <eric.dumazet@gmail.com>
Cc: netdev@vger.kernel.org, Timo Teras <timo.teras@iki.fi>
Subject: Re: Multicast Fails Over Multipoint GRE Tunnel
Date: Tue, 15 Mar 2011 14:24:42 -0700 (PDT) [thread overview]
Message-ID: <736238.4685.qm@web39308.mail.mud.yahoo.com> (raw)
In-Reply-To: <1300203277.2927.9.camel@edumazet-laptop>
Hi Eric,
--- On Tue, 3/15/11, Eric Dumazet <eric.dumazet@gmail.com> wrote:
> From: Eric Dumazet <eric.dumazet@gmail.com>
> Subject: Re: Multicast Fails Over Multipoint GRE Tunnel
> To: "Doug Kehn" <rdkehn@yahoo.com>
> Cc: netdev@vger.kernel.org, "Timo Teras" <timo.teras@iki.fi>
> Date: Tuesday, March 15, 2011, 11:34 AM
> Le lundi 14 mars 2011 à 16:34 -0700,
> Doug Kehn a écrit :
> > Hi All,
> >
> > I'm running kernel version 2.6.36 on ARM XSCALE
> (big-endian) and multicast over a multipoint GRE tunnel
> isn't working. For my architecture, this worked on
> 2.6.26.8. For x86, multicast over a multipoint GRE
> tunnel worked with kernel version 2.6.31 but failed with
> version 2.6.35. Multicast over a multipoint GRE tunnel
> fails because ipgre_header() fails the 'if (iph->daddr)'
> check and reutrns -t->hlen. ipgre_header() is being
> called, from neigh_connected_output(), with a non-null
> daddr; the contents of daddr is zero.
> >
> > Reverting the ip_gre.c patch posted in http://marc.info/?l=linux-netdev&m=126762491525281&w=2
> resolves the problem. (Reviewing the HEAD of
> net-next-2.6 it appears that ipgre_header() remains
> unchanged from 2.6.36.)
> >
> > The configuration used to discover/diagnose the
> problem:
> >
> > ip tunnel add tun1 mode gre key 11223344 ttl 64 csum
> remote any
> > ip link set dev tun1 up
> > ip link set dev tun1 multicast on
> > ip addr flush dev tun1
> > ip addr add 10.40.92.114/24 broadcast 10.40.92.255 dev
> tun1
> >
> > 12: tun1: <MULTICAST,NOARP,UP,10000> mtu 1468
> qdisc noqueue
> > link/gre 0.0.0.0 brd 0.0.0.0
> > inet 10.40.92.114/24 brd
> 10.40.92.255 scope global tun1
> >
> > Then attempt:
> > ping -I tun1 224.0.0.9
> >
> > Are additional configuration steps now required for
> multicast over multipoint GRE tunnel or is ipgre_header() in
> error?
>
> Hi Doug
>
> CC Timo Teras <timo.teras@iki.fi>
>
> I would do a partial revert of Timo patch, but this means
> initial
> concern should be addressed ?
>
> (Timo mentioned :
> If the NOARP packets are not dropped,
> ipgre_tunnel_xmit() will
> take rt->rt_gateway (= NBMA IP) and
> use that for route
> look up (and may lead to bogus xfrm
> acquires).)
>
>
> Is the following works for you ?
>
> diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c
> index da5941f..47844fa2 100644
> --- a/net/ipv4/ip_gre.c
> +++ b/net/ipv4/ip_gre.c
> @@ -1170,8 +1170,10 @@ static int ipgre_header(struct
> sk_buff *skb, struct net_device *dev,
>
> if (saddr)
>
> memcpy(&iph->saddr, saddr, 4);
> - if (daddr)
> + if (daddr) {
>
> memcpy(&iph->daddr, daddr, 4);
> + return t->hlen;
> + }
> if (iph->daddr)
> return t->hlen;
>
Yes, the partial revert does work.
Regards,
...doug
prev parent reply other threads:[~2011-03-15 21:24 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-14 23:34 Multicast Fails Over Multipoint GRE Tunnel Doug Kehn
2011-03-15 15:34 ` Eric Dumazet
2011-03-15 16:36 ` Timo Teräs
2011-03-15 18:28 ` Timo Teräs
2011-03-15 21:33 ` Doug Kehn
2011-03-15 21:35 ` Doug Kehn
2011-03-16 6:01 ` Timo Teräs
2011-03-16 20:02 ` Doug Kehn
2011-03-27 16:17 ` Timo Teräs
2011-03-29 8:40 ` [PATCH] net: gre: provide multicast mappings for ipv4 and ipv6 Timo Teräs
2011-03-29 9:11 ` Eric Dumazet
2011-03-29 10:00 ` Timo Teräs
2011-03-29 20:26 ` Doug Kehn
2011-03-30 7:11 ` David Miller
2011-03-15 21:24 ` Doug Kehn [this message]
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=736238.4685.qm@web39308.mail.mud.yahoo.com \
--to=rdkehn@yahoo.com \
--cc=eric.dumazet@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=timo.teras@iki.fi \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.