Re: Synchronous board drivers

Henner Eisen (eis@baty.hanse.de)
Wed, 7 Jul 1999 22:16:04 +0200


>>>>> Andi Kleen <ak@muc.de> writes:

>> interface. The disadvantage is that it does not allow to pass
>> link state changes (i.e. tty hangup) to the upper layer and
>> that each packet passes netif_rx two times.

> You can use skb->cb[] to pass lots of state. IP/TCP need it too
> for sending, on the receiving side it is free for use until it
> hits ip_rcv. Just make sure that all drivers who use the
> protocol type know about it.

> -Andi

Who is the official `owner' of the skb->cb field? Is it a public field of
the sk_buff structure or is it subject to removal if somebody
re-designs tcp/ip?

It seems, we need to be careful if the packet passed multiple netif_rx()
E.g. if the hdlc device passes the frame upstream by a netif_rx(), devlivers
it to syncppp_rcv() which finally passes it further upstream by a
second netif_rx(). Further, if tcp/ip uses the cb field, the cb field
cannot be used in a symmetrical manner to pass link control information
downstream to the device.

Would a new packet type like PACKET_CONTROL would be appropriate?
(Anyway, it seems that ppp can get along without as all link state related
stuff can be entirely hadled by pppd without the need of enhancing
kernel-internal interfaces).

Henner

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/