Subject: Re: [net-next PATCH v1 1/3] net: sched: af_packet support for direct ring access

From: John Fastabend <[email-masked]>
Date: Sun, 05 Oct 2014 18:18:47 -0700

On 10/05/2014 06:09 PM, David Miller wrote:
> From: Florian Westphal <[email-masked]>
> Date: Mon, 6 Oct 2014 02:29:51 +0200
>
>> John Fastabend <[email-masked]> wrote:
>>> There is one critical difference when running with these interfaces
>>> vs running without them. In the normal case the af_packet module
>>> uses a standard descriptor format exported by the af_packet user
>>> space headers. In this model because we are working directly with
>>> driver queues the descriptor format maps to the descriptor format
>>> used by the device. User space applications can learn device
>>> information from the socket option PACKET_DEV_DESC_INFO which
>>> should provide enough details to extrapulate the descriptor formats.
>>> Although this adds some complexity to user space it removes the
>>> requirement to copy descriptor fields around.
>>
>> I find it very disappointing that we seem to have to expose such
>> hardware specific details to userspace via hw-independent interface.
>>
>> How big of a cost are we talking about when you say that it 'removes
>> the requirement to copy descriptor fields'?
>
> FWIW, it also avoids the domain switch (which is just a fancy way
> to refer to performing the system call), both in and out.
>

Right, my description could have been better and called this out.

Thanks.

-- 
John Fastabend         Intel Corporation