[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20120410102612.368b1a4f@thirdoffive.cmf.nrl.navy.mil>
Date: Tue, 10 Apr 2012 10:26:12 -0400
From: chas williams - CONTRACTOR <chas@....nrl.navy.mil>
To: David Woodhouse <dwmw2@...radead.org>
Cc: netdev@...r.kernel.org, David Miller <davem@...emloft.net>,
paulus@...ba.org, Eric Dumazet <eric.dumazet@...il.com>
Subject: Re: [PATCH] pppoatm: Fix excessive queue bloat
On Sun, 08 Apr 2012 21:53:57 +0200
David Woodhouse <dwmw2@...radead.org> wrote:
> Seriously, this gets *much* easier if we just ditch the checks against
> sk_sndbuf. We just wake up whenever decrementing ->inflight from zero.
> Can I?
i dont know. on a 'low' speed connection like queuing 2 packets might
be enough to keep something busy but imagine an interace like oc3 or
oc12. i dont know anything running pppoatm on such an interface but it
seems like just dropping sk_sndbuf isnt right either.
sk_sndbuf is per vcc and that isnt right either since the transmit
limit is actually the atm device's transmit queue depth. in your case,
since you are only using a single vcc, this problem does somewhat map
to a sk_sndbuf. but sk_sndbuf counts bytes and not entries in a queue
which is typically the limit imposed by the hardware.
it makes me wonder if we dont need to add another stub to the atm
driver interface to check if the device can transmit instead of 'can we
queue on the vcc'. atm_may_send() then would be changed to check to see
if a transmit queue entry is available and there is sk_sndbuf queue
space. if a driver doesnt have this stub to check for queue space,
atm_may_send() can just assume there is a queue entry and we get the
previous default behavior. what is the "queue depth" of your atm
device's transmit queue?
yes, the vcc->sk_sndbuf should be MAX(vcc->sk_sndbuf, pppoatm->MTU) but
since people dont often change the sk_sndbuf i guess no one has run
into this issue. pppoatm (et al) should enforce this limit though.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists