Messages in this thread | | | Date | Thu, 30 May 2013 09:04:18 +0300 | From | Eliezer Tamir <> | Subject | Re: [PATCH v6 net-next 2/5] net: implement support for low latency socket polling |
| |
On 29/05/2013 21:52, Or Gerlitz wrote: > Eliezer Tamir <eliezer.tamir@linux.intel.com> wrote: >> Or Gerlitz wrote: > >>> Unlike with TCP sockets, UDP sockets may receive packets from multiple >>> sources and hence the receiving context may be steered to be executed >>> on different cores through RSS or other Flow-Steering HW mechanisms >>> which could mean different napi contexts for the same socket, is that >>> a problem here? what's the severity? > >> Nothing will break if you poll on the wrong queue. >> Your data will come through normal NAPI processing of the right queue. > > Can you elaborate a little further, why you call this "wrong" and "right"?
Right == the queue the packets arrive on. Wrong == any other queue.
BTW, if you have an application that receives UDP data to an unbound socket, wouldn't it be better in any case to steer all of the incoming packets for this UDP socket to a single queue disregarding the source address? (Can't your hardware do that?)
The general approach is that userspace needs to make sure that threads, connections and IRQs are bound to the right CPUs.
-Eliezer
| |