| To: | Ben Greear <greearb@xxxxxxxxxxxxxxx> |
|---|---|
| Subject: | Re: [e1000 2.6 10/11] TxDescriptors -> 1024 default |
| From: | "David S. Miller" <davem@xxxxxxxxxx> |
| Date: | Thu, 11 Sep 2003 14:29:06 -0700 |
| Cc: | jgarzik@xxxxxxxxx, scott.feldman@xxxxxxxxx, netdev@xxxxxxxxxxx, ricardoz@xxxxxxxxxx |
| In-reply-to: | <3F60E947.4090005@xxxxxxxxxxxxxxx> |
| References: | <Pine.LNX.4.44.0309081953510.1261-100000@xxxxxxxxxxxxxxxxxxxxx> <3F60CA6D.9090503@xxxxxxxxx> <3F60D0F3.8080006@xxxxxxxxxxxxxxx> <20030911131219.0ab8dfdd.davem@xxxxxxxxxx> <3F60DDCC.5020906@xxxxxxxxxxxxxxx> <20030911140746.4f0384a1.davem@xxxxxxxxxx> <3F60E947.4090005@xxxxxxxxxxxxxxx> |
| Sender: | netdev-bounce@xxxxxxxxxxx |
On Thu, 11 Sep 2003 14:29:43 -0700 Ben Greear <greearb@xxxxxxxxxxxxxxx> wrote: > Thanks for that clarification. Is there no way to tell > at 'sendto' time that the buffers are over-full, and either > block or return -EBUSY or something like that? The TX queue state can change by hundreds of packets by the time we are finished making the "decision", also how would you like to "wake" up sockets when the TX queue is liberated. That extra overhead and logic would be wonderful for performance. No, this is all nonsense. Packet scheduling and queueing is an opaque layer to all the upper layers. It is the only sensible design. IP transmit is black hole that may drop packets at any moment, any datagram application not prepared for this should be prepared for troubles or choose to move over to something like TCP. I listed even a workaround for such stupid UDP apps, simply limit their socket send queue limits. |
| Previous by Date: | Re: [e1000 2.6 10/11] TxDescriptors -> 1024 default, Ben Greear |
|---|---|
| Next by Date: | RE: 82540EM very slow on 2.6.0-test[45], Feldman, Scott |
| Previous by Thread: | Re: [e1000 2.6 10/11] TxDescriptors -> 1024 default, Ben Greear |
| Next by Thread: | Re: [e1000 2.6 10/11] TxDescriptors -> 1024 default, Ricardo C Gonzalez |
| Indexes: | [Date] [Thread] [Top] [All Lists] |