| To: | ak@xxxxxxx |
|---|---|
| Subject: | Re: Q: sock output serialization |
| From: | Henner Eisen <eis@xxxxxxxxxxxxx> |
| Date: | Sun, 17 Sep 2000 09:02:10 +0200 |
| Cc: | alan@xxxxxxxxxxxxxxxxxxx, davem@xxxxxxxxxx, kuznet@xxxxxxxxxxxxx, linux-kernel@xxxxxxxxxxxxxxx, netdev@xxxxxxxxxxx |
| In-reply-to: | <20000917015435.A712@xxxxxxxxxxxxxxxxxxx> (ak@xxxxxxx) |
| References: | <E13a3yj-0008E6-00@xxxxxxxxxxxxxxxxx> <200009162139.XAA01092@xxxxxxxxxxxxx> <20000917015435.A712@xxxxxxxxxxxxxxxxxxx> |
| Sender: | owner-netdev@xxxxxxxxxxx |
>>>>> "Andi" == Andi Kleen <ak@xxxxxxx> writes:
Andi> It would just be racy. You test, get a not drop and then
Andi> another different interrupt would deliver another packet
Andi> before you can and fill the queue. Jamal's extended
Andi> netif_rx probably makes more sense, because it can be
Andi> atomic.
I thought if it was executed from the same single interrupt handler
(and lapb also processed from that same interrupt handler) while
local irq are disables, this could not happen.
But for smart controllers, this does not hold, they would need to
interrupt the cpu first to query the state, and than again before
delivering the packet. And for dumb cards, doing the lapb processing
inside irq handler is not nice, anyway. Moving lapb processing above
netif_rx() would resolve this and all other problems.
Henner
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Re: Q: sock output serialization, Andi Kleen |
|---|---|
| Next by Date: | Re: Q: sock output serialization, Henner Eisen |
| Previous by Thread: | Re: Q: sock output serialization, Andi Kleen |
| Next by Thread: | PATCH 2.4.0.9.2: export ethtool interface, Jeff Garzik |
| Indexes: | [Date] [Thread] [Top] [All Lists] |