Re: Kernel 2.6.14 and old versions of traceroute

From: Steffen Moser
Date: Tue Nov 01 2005 - 06:21:01 EST


Hi David,

* On Mon, Oct 31, 2005 at 07:30 PM (+0000), David R wrote:

> I've noticed that old versions of traceroute no longer work properly
> with the latest kernel. 2.6.13.4 is OK. I've done a bit of strace and am
> posting the differences here. These are from a 64 bit kernel using
> traceroute 0.6.2 as shipped with most versions of SuSE.

I am experiencing exactly the same problem with traceroute-0.6.2
running on SuSE 10.0 together with kernel 2.6.14. The whole thing
happens on a single core dual Opteron machine. I've tested this
kernel version on that machine only, yet.

I've also tried the latest traceroute version (1.0.2) from

ftp://ftp.lst.de/pub/people/okir/traceroute/

and experienced the same behaviour.

Olaf Kirch has just sent me a patch against 2.6.14. It has also
been discussed in NETDEV.

This fixed it for me:

--- a/net/core/datagram.c 2005-11-01 11:38:31.000000000 +0100
+++ b/net/core/datagram.c 2005-11-01 11:38:45.000000000 +0100
@@ -213,6 +213,10 @@
{
int i, err, fraglen, end = 0;
struct sk_buff *next = skb_shinfo(skb)->frag_list;
+
+ if (!len)
+ return 0;
+
next_skb:
fraglen = skb_headlen(skb);
i = -1;

Bye,
Steffen
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/