Subject: Re: [PATCH] NET: Multiqueue network device support.

From: Zhu Yi <[email-masked]>
Date: Wed, 20 Jun 2007 13:51:46 +0800

On Tue, 2007-06-19 at 12:04 -0400, jamal wrote:
> In the case of wireless, pick two numbers XHH and XHL with XHL < XHH.
> The timers would be similar in nature (THH > THL). All these variables
> are only valid if you shutdown the ring. 
> So in the case HL shuts down the ring, you fire THL. If either XHL
> packets are transmitted or THL expires, you netif_wake.
> Did that make sense? 

No, because this is over-engineered. Furthermore, don't you think the
algorithm is complicated and unnecessary (i.e. one timer per h/w queue)?
Do you think the driver maintainer will accept such kind of workaround
patch? You did too much to keep the Qdisc interface untouched!

Besides, the lower THL you choose, the more CPU time is wasted in busy
loop for the only PL case; the higher THL you choose, the slower the PH
packets will be sent out than expected (the driver doesn't fully utilize
the device function -- multiple rings, which conlicts with a device
driver's intention). You can never make a good trade off in this model.

I think I have fully understood you, but your point is invalid. The
Qdisc must be changed to have the hardware queue information to support
multiple hardware queues devices.

Thanks,
-yi