Subject: Re: [NET_SCHED 11/11]: qdisc: avoid dequeue while throttled

From: Patrick McHardy <[email-masked]>
Date: Fri, 23 Mar 2007 15:57:08 +0100

Patrick McHardy wrote:
>>[NET_SCHED]: qdisc: avoid dequeue while throttled
> 
> 
> It just occured to me that this doesn't work properly with qdiscs
> that have multiple classes since they all don't properly maintain
> the TCQ_F_THROTTLED flag. They set it on dequeue when no active
> class is willing to give out packets, but when enqueueing to a
> non-active class (thereby activating it) it is still set even though
> we don't know if that class could be dequeued.
> 
> So this updated patch unsets the TCQ_F_THROTTLED flag whenever we
> activate a class. Additionally it removes the unsetting of
> TCQ_F_THROTTLED on successful dequeue since we're now guaranteed
> that it was not set before.

I found another case that doesn't work properly, so let me retract
this patch until I've properly thought this through.