[ovs-dev] [PATCH openvswitch] netlink: Implement & enable memory mapped netlink i/o

Thomas Graf tgraf at redhat.com
Wed Nov 27 22:51:20 UTC 2013


On 11/26/2013 12:02 AM, Ben Pfaff wrote:
> On Thu, Nov 21, 2013 at 07:16:54PM +0100, Thomas Graf wrote:
>> Based on the initial patch by Cong Wang posted a couple of months
>> ago.
>>
>> This is the user space counterpart needed for the kernel patch
>> '[PATCH net-next 3/8] openvswitch: Enable memory mapped Netlink i/o'
>>
>> Allows the kernel to construct Netlink messages on memory mapped
>> buffers and thus avoids copying. The functionality is enabled on
>> sockets used for unicast traffic.
>>
>> Further optimizations are possible by avoiding the copy into the
>> ofpbuf after reading.
>>
>> Cc: Cong Wang <xiyou.wangcong at gmail.com>
>> Signed-off-by: Thomas Graf <tgraf at redhat.com>
>
> Does this depend on other patches or some specific Linux kernel
> headers?  It doesn't build here on GCC (similar results with Clang):

Yes, it depends on a sufficiently recent <linux/netlink.h>. We can
either #ifdef the mmap code or we provide a local copy of
<linux/netlink.h> in include/linux. The code automatically falls back if
the kernel does not support NL MMAP so that seems superior.

What do you prefer?



More information about the dev mailing list