Messages in this thread |  | | Subject | Re: Protocol 0008 is buggy | From | Henner Eisen <> | Date | 09 Oct 2000 20:56:48 +0200 |
| |
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/
|  |