Brandeburg, Jesse wrote:
> Roman Chertov wrote:
>> I have a question regarding multi-queue support.  I noticed that
>> current NAPI code only deals with one queue; however, it appears that
>> the 
>> support for multiple rings is there.
> 
> Which driver are you referring to?  In general yes, we support multiple
> RX queues with NAPI enabled on 2.6.24 and later kernels.  We also have
> an upcoming driver release to make the drivers capable of multiple RX
> queues on older kernels with NAPI enabled.  Currently you need to
> disable NAPI to get multi-rx on <= 2.6.23 kernels.
>  
>> So if multiple receive and transmit rings were enabled how does the
>> driver decide which ring to use or is it the task of whoever manages
>> the driver?  For instance, does it imply that a polling thread must
>> exist 
>> per input ring?  If so, then how does the polling code know which
>> packets belong to it?
> 
> each queue gets its own msi-x vector and each queue only gets packets
> which match the RSS hash for that queue.  There are separate hardware
> resources for each queue and the driver has a ring struct for each queue
> to maintain separate state.

Can you point me to some information regarding the RSS hash and how it 
is setup?

Thank you for the informative reply.

Roman

>  
>> In the transmit case.  Can then multiple threads write to their
>> respective transmit rings and trigger a TX?  Then, I would assume the
>> card would just run some scheduler and drain the rings according to
>> some schedule.  Is this a correct assumption?
> 
> yes, the card by default runs a round robin scheduler for the tx queues,
> and each queue works to transmit and complete its tx rings
> independently.
> 
> Hope this helps,
> Jesse
> 


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
E1000-devel mailing list
E1000-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/e1000-devel

Reply via email to