netdev
[Top] [All Lists]

Re: [e1000 2.6 10/11] TxDescriptors -> 1024 default

To: "David S. Miller" <davem@xxxxxxxxxx>
Subject: Re: [e1000 2.6 10/11] TxDescriptors -> 1024 default
From: Ben Greear <greearb@xxxxxxxxxxxxxxx>
Date: Thu, 11 Sep 2003 14:29:43 -0700
Cc: jgarzik@xxxxxxxxx, scott.feldman@xxxxxxxxx, netdev@xxxxxxxxxxx, ricardoz@xxxxxxxxxx
In-reply-to: <20030911140746.4f0384a1.davem@xxxxxxxxxx>
Organization: Candela Technologies
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>
Sender: netdev-bounce@xxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5b) Gecko/20030827
David S. Miller wrote:
On Thu, 11 Sep 2003 13:40:44 -0700
Ben Greear <greearb@xxxxxxxxxxxxxxx> wrote:


So, assume we configure a 10MB socket send queue on our UDP socket...

Select says its writable up to at least 5MB.

We write 5MB of 64byte packets "righ now".

Did we just drop a large number of packets?


Yes, we did _iff_ dev->tx_queue_len is less than or equal
to (5MB / (64 + sizeof(udp_id_headers))).

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?

Perhaps the poll logic should also take the underlying buffer
into account and not show the socket as writable in this case?

Supposing in the above example, I set tx_queue_len to
(5MB / (64 + sizeof(udp_id_headers))), will
the packets now be dropped in the driver instead, or will there
be no more (local) drops?

Ben

--
Ben Greear <greearb@xxxxxxxxxxxxxxx>
Candela Technologies Inc  http://www.candelatech.com



<Prev in Thread] Current Thread [Next in Thread>