Subject: Re: [RFC PATCH 0/5] net: low latency Ethernet device polling

From: Eliezer Tamir <[email-masked]>
Date: Mon, 04 Mar 2013 10:19:58 +0200

On 04/03/2013 09:37, Cong Wang wrote:
> On 02/28/2013 01:55 AM, Eliezer Tamir wrote:
>>
>> Open issues:
>> 1. Find a way to avoid the need to change the sk and skb structs.
>> One big disadvantage of how we do this right now is that when a device is
>> removed, it's hard to prevent it from getting polled by a socket
>> which holds a stale reference.
>>
>> 2. How do we decide which sockets are eligible to do busy polling?
>> Do we add a socket option to control this?
>> How do we provide sane defaults while allowing flexibility and
>> performance?
>>
>> 3. Andi Kleen and HPA pointed out that using get_cycles() is not
>> portable.
>>
>> 4. How and where do we call ndo_ll_poll from the socket code?
>> One good place seems to be wherever the kernel puts the process to sleep,
>> waiting for more data, but this makes doing something intelligent about
>> poll (the system call) hard. From the perspective of how ndo_ll_poll
>> itself is implemented this does not seem to matter.
>>
>> 5. I would like to hear suggestions on naming conventions and where
>> to put the code that for now I have put in include/net/ll_poll.h
>>
>
>
> A dumb question: is bypassing tcpdump/netfilters/qdisc etc. what we
> always want? Isn't this a security issue?

We are not bypassing any of the regular stack checks/hooks, we call the 
normal netif_rx_skb().

Thanks,
Eliezer