Re: tulip driver in 2.1.11* - 2.1.21 is broken - new driver

kuznet@ms2.inr.ac.ru
Sun, 20 Sep 1998 19:17:59 +0400 (MSK DST)


Hello!

> That is sort of fixable but does require some kind of irq awareness. In
> netif_rx
>
> if(skb_queue_len(&backlog)>200)
> {
> /* This wont always be the right victim but statistically
> speaking we punish the guilty party. Van would probably
> argue we should pick an entry at random from the queue
> and disable its IRQ, but we cant do that O(1) */
> disable_irq(skb->dev->irq);
> }

Effectively, it is the thing, which is called CONFIG_NET_HW_FLOWCONTROL.
Only throttling function is leaved to device driver, so that
it may throttle only receive direction. Again, tulip and 8390 only.

BTW current 8390 uses disable_irq(), it is pretty strange.
disable_irq()/enable_irq() is not reentrable combination.

hw_flowcontrol appeared superb solution in some situations,
but it did not all the problem, only shifted point of disaster.

Alexey

-
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/