lkml.org 
[lkml]   [2006]   [May]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: 2.6.17-rc4: netfilter LOG messages truncated via NETCONSOLE
Frank van Maarseveen wrote:
> On Wed, May 31, 2006 at 04:57:13PM +0200, Patrick McHardy wrote:
>
>>The message means that there was recursion and netpoll fell back
>>to dev_queue_xmit This patch should fix the "protocol is buggy"
>>messages, netpoll didn't set skb->nh.raw. Please try if it also
>>makes the other problem go away.
>
>
> "protocol 0000 is buggy" is gone. The other problem is still there.


The messages might get dropped when the output queue is full.
Does one of the drop counters shown by "ip -s link list"
and "tc -s -d qdisc show" increase (the other counts might also
give some clues)? Otherwise please apply the attached patch
(should fix tcpdump, last patch was incomplete) and post a dump.


diff --git a/net/core/netpoll.c b/net/core/netpoll.c
index e8e05ce..05ed18d 100644
--- a/net/core/netpoll.c
+++ b/net/core/netpoll.c
@@ -329,7 +329,7 @@ void netpoll_send_udp(struct netpoll *np
udph->len = htons(udp_len);
udph->check = 0;

- iph = (struct iphdr *)skb_push(skb, sizeof(*iph));
+ skb->nh.iph = iph = (struct iphdr *)skb_push(skb, sizeof(*iph));

/* iph->version = 4; iph->ihl = 5; */
put_unaligned(0x45, (unsigned char *)iph);
@@ -346,7 +346,7 @@ void netpoll_send_udp(struct netpoll *np

eth = (struct ethhdr *) skb_push(skb, ETH_HLEN);

- eth->h_proto = htons(ETH_P_IP);
+ eth->h_proto = skb->protocol = htons(ETH_P_IP);
memcpy(eth->h_source, np->local_mac, 6);
memcpy(eth->h_dest, np->remote_mac, 6);
\
 
 \ /
  Last update: 2006-05-31 18:39    [W:0.049 / U:0.760 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site