Re: [PATCH] NET: [UPDATED] Multiqueue network device support implementation.

2007-04-11 Thread Zhu Yi
On Wed, 2007-04-11 at 19:03 +0200, Patrick McHardy wrote: > > You bring up a good point, it would be good to hear the opinion from > one of the wireless people on this since they have their own > multiqueue scheduler in the wireless-dev tree. The one in the wireless-dev is pretty much like this

Re: [PATCH] NET: [UPDATED] Multiqueue network device support implementation.

2007-04-11 Thread Patrick McHardy
Waskiewicz Jr, Peter P wrote: >>Packets will only be dequeued from a band if the associated >>subqueue is active, which moves the decision from prio to the >>driver, no? >>What policy does e1000 use for scheduling its internal queues? >> > > > E1000 is handed the skb's from PRIO to whichever qu

RE: [PATCH] NET: [UPDATED] Multiqueue network device support implementation.

2007-04-11 Thread Waskiewicz Jr, Peter P
> Thanks. > > > However, the PRIO qdisc still uses the priority in the bands for > > dequeueing priority, and will feed the queues on the NIC. > > The e1000, and any other multiqueue NIC, will schedule Tx > based on how > > the PRIO qdisc feeds the queues. So the only priority here is the > >

RE: [PATCH] NET: [UPDATED] Multiqueue network device support implementation.

2007-04-11 Thread Waskiewicz Jr, Peter P
> >>>+ skb->queue_mapping = > >>>+ > q->prio2band[q->band2queue[band&TC_PRIO_MAX]]; > >> > >> > >>Does this needs to be cleared at some point again? TC actions might > >>redirect or mirror packets to other (multiqueue) devices. > > > > > > If an skb is

Re: [PATCH] NET: [UPDATED] Multiqueue network device support implementation.

2007-04-10 Thread Patrick McHardy
Waskiewicz Jr, Peter P wrote: >>This leaks the device. You treat every single-queue device as >>having a single subqueue. If it doesn't get too ugly it would >>be nice to avoid this and only allocate the subqueue states >>for real multiqueue devices. > > > We went back and forth on this. The

RE: [PATCH] NET: [UPDATED] Multiqueue network device support implementation.

2007-04-10 Thread Waskiewicz Jr, Peter P
> Peter P Waskiewicz Jr wrote: > > + /* To retrieve statistics per subqueue - FOR FUTURE USE */ > > + struct net_device_stats* (*get_subqueue_stats)(struct > net_device *dev, > > + int > queue_index); > > > Please no future use stuff, just a

Re: [PATCH] NET: [UPDATED] Multiqueue network device support implementation.

2007-04-10 Thread Patrick McHardy
Peter P Waskiewicz Jr wrote: > + /* To retrieve statistics per subqueue - FOR FUTURE USE */ > + struct net_device_stats* (*get_subqueue_stats)(struct net_device *dev, > + int queue_index); Please no future use stuff, just add it when you

Re: [PATCH] NET: [UPDATED] Multiqueue network device support implementation.

2007-04-10 Thread Patrick McHardy
Waskiewicz Jr, Peter P wrote: > Thanks Pat for the initial feedback. I can post a set of patches to > e1000 using the new API; I'll try to get them out asap (need to apply to > this kernel tree). Thanks. > However, the PRIO qdisc still uses the priority in > the bands for dequeueing priority, a

RE: [PATCH] NET: [UPDATED] Multiqueue network device support implementation.

2007-04-09 Thread Waskiewicz Jr, Peter P
> This indeed looks a lot better than the first patch. I'm too > tired to fully review this now, but could you please post the > corresponding e1000 patch? From a quick look I'm guessing > that this patch changes the behaviour of the prio qdisc from > strict priority to whatever scheduling mech

Re: [PATCH] NET: [UPDATED] Multiqueue network device support implementation.

2007-04-09 Thread Patrick McHardy
Peter P Waskiewicz Jr wrote: > From: Peter P Waskiewicz Jr <[EMAIL PROTECTED]> > > Update: Fixed a typecast in free_netdev() for the egress_subqueue list. > > Added an API and associated supporting routines for multiqueue network > devices. > This allows network devices supporting multiple TX qu

[PATCH] NET: [UPDATED] Multiqueue network device support implementation.

2007-04-09 Thread Peter P Waskiewicz Jr
From: Peter P Waskiewicz Jr <[EMAIL PROTECTED]> Update: Fixed a typecast in free_netdev() for the egress_subqueue list. Added an API and associated supporting routines for multiqueue network devices. This allows network devices supporting multiple TX queues to configure each queue within the netd