Hi,
>>>>> "Ivan" == Ivan Passos <lists@cyclades.com> writes:
Ivan> Hello,
Ivan> I have a customer who's getting tons of this msg in his
Ivan> LOGs:
Ivan> kernel: protocol 0008 is buggy, dev hdlc0
Ivan> The msg comes from net/core/dev.c, and this device is using
Ivan> the Frame Relay protocol in drivers/net/hdlc.c .
Ivan> What I'd like to know is: - What exactly causes this msg??
Ivan> It seems that it's printed when someone sends a packet
Ivan> without the skb->nh.raw correctly set, but I couldn't find
Ivan> any driver under drivers/net that sets this. - How can /
It should be set by the upper (network layer) protocol which passes
the skb down to the network interface. Device drivers usually don�t
set it unless they are themselves upper layers for a yet downstream
network interface (in case of protocol tunnels). Thus, for examples,
grep 'skb->nh' /usr/src/linux/net/*.c
Ivan> should I solve this?? Should it be solved in the hdlc.c
Ivan> driver or somewhere else in an upper level??
... and thus should be fixed in that upper layer.
The protocol number 0008 is defined in include/linix/if_ether.h:
#define ETH_P_PPP_MP 0x0008 /* Dummy type for PPP MP frames */
Thus, my guess is that your customer is using ppp on top of the frame relay
device by means of the snycppp driver. And it�s probably the syncppp driver
to blame for and to fix. Yes, this is one of these network interfaces
mentioned above which is itself an upper layers for a downstream network
interface. It�s in drivers/net/syncppp.c (2.2.x) or in
drivers/net/wan/syncppp.c (2.4.x).
Ivan> Thanks in advance for your help.
Henner
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Sun Oct 15 2000 - 21:00:13 EST