Subject: Re: [PATCH 20/31]: pkt_sched: Perform bulk of qdisc destruction in RCU.

From: jamal <[email-masked]>
Date: Sun, 20 Jul 2008 22:20:38 -0400

On Sun, 2008-20-07 at 16:59 -0700, David Miller wrote:

> Every time this topic comes up, you insist on them having to match.
> And I have no idea why.

I dont insist on them matching, just on correctness. i.e if you say you
have RR, then the scheduling needs to meet those requirements not an
estimate - thats all.

> The problem is that the bottleneck is the qdisc itself since all those
> cpus synchonize on it's lock.  We can't have a shared qdisc for the
> device and get full parallelization.
> 
> That's why we're having one qdisc per TX queue, so that they all don't
> bunch up on the qdisc lock.

That last sentence i have no issues with - it is what i thought wasnt
happening;-> i misunderstood it to be a single fifo shared by all
hardware tx queues from the begining (otherwise i wouldnt be posting).
We are in sync i think, a single pfifo per TX queue is the way to go. I
was suggesting it goes in the driver, but this is cleaner: In the
future, one could could actually replace the pfifo with another qdisc
since the single virtual wire becomes equivalent to a single virtual
netdevice

> Otherwise, there is zero point in all of these TX multiqueue features
> in the hardware if we can't parallelize things fully.

parallelization is achieveable in the ideal case.

cheers,
jamal