netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: David Miller <davem@davemloft.net>
To: jdb@comx.dk
Cc: netdev@vger.kernel.org
Subject: Re: BUG: NIU driver: strange issues with multicast "UDP: short packet"
Date: Tue, 03 Feb 2009 15:38:53 -0800 (PST)	[thread overview]
Message-ID: <20090203.153853.163818774.davem@davemloft.net> (raw)
In-Reply-To: <1233668300.20497.49.camel@localhost.localdomain>

From: Jesper Dangaard Brouer <jdb@comx.dk>
Date: Tue, 03 Feb 2009 14:38:20 +0100

>   UDP: short packet: From 81.161.2.106:0 44063/1324 to 233.123.173.7:0
>   UDP: short packet: From 81.161.2.106:0 44063/1324 to 233.123.173.7:0
>   UDP: short packet: From 81.161.2.106:8304 27493/1324 to 233.123.173.7:24931
>   UDP: short packet: From 81.161.2.106:8304 27493/1324 to 233.123.173.7:24931
>   UDP: short packet: From 81.161.2.106:8304 27493/1324 to 233.123.173.7:24931
>   UDP: short packet: From 81.161.2.106:8304 27493/1324 to 233.123.173.7:24931

The UDP header length field is garbage in all of these packets.

In the first two packets here, the source and dest ports are
both zero.  This is also garbage.,

> Tcpdumping the packets, the contents of the packets are correct.

So something corrupts the packet on the way to UDP input.

> The next strange thing is that I can make the log messages go away, if I
> setup a static multicast route out another interface.
> 
>   smcroute -a eth52 81.161.2.106 233.123.173.7 eth21

That could be a good clue.

Do you happen to have multicast routing enabled on this machine?  If
the multicast destination is non-local and IN_DEV_FORWARD is set on
the interface, that puts the packet through ip_mr_input.

ip_mr_input() will clone the SKB if it should be delivered locally
as well as be forwarded.

If the packet does get multicast forwarded, there is all kinds of
funny code that mangles the packet, for example ipmr_cache_report().

Any of this could be corrupting what UDP ends up seeing.

To be honest all of the SKB handling in the ipmr.c file is very scary.

  reply	other threads:[~2009-02-03 23:38 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-02-03 13:38 BUG: NIU driver: strange issues with multicast "UDP: short packet" Jesper Dangaard Brouer
2009-02-03 23:38 ` David Miller [this message]
2009-02-04  8:55   ` Jesper Dangaard Brouer
2009-02-04  9:00     ` David Miller
2009-02-04  9:32       ` Jesper Dangaard Brouer
2009-02-04  9:34         ` David Miller
2009-02-05 12:44       ` Jesper Dangaard Brouer
2009-02-05 12:47         ` [PATCH] Fix UDP short packet false positive Jesper Dangaard Brouer
2009-02-05 23:06           ` David Miller
2009-02-06  9:00             ` [RFC] " Jesper Dangaard Brouer
2009-02-06  9:08               ` David Miller
2009-02-06  9:55                 ` [PATCH] udp: Fix potential wrong ip_hdr(skb) pointers Jesper Dangaard Brouer
2009-02-06  9:59                   ` David Miller
2009-02-06 10:04                   ` Eric Dumazet
2009-02-06 10:49                     ` Jesper Dangaard Brouer
2009-02-06 11:11                       ` David Miller
2009-02-04 11:52   ` BUG: NIU driver: strange issues with multicast "UDP: short packet" Herbert Xu

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=20090203.153853.163818774.davem@davemloft.net \
    --to=davem@davemloft.net \
    --cc=jdb@comx.dk \
    --cc=netdev@vger.kernel.org \
    /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).