dpif-linux: Avoid pessimal behavior when kernel-to-user buffers overflow.
authorBen Pfaff <blp@nicira.com>
Wed, 23 May 2012 21:56:20 +0000 (14:56 -0700)
committerBen Pfaff <blp@nicira.com>
Fri, 1 Jun 2012 21:40:34 +0000 (17:40 -0400)
commite222833e3915daacf8e22d97290a6e901206a405
tree1db2f5116ecdcc86eb1a2fda0c6d25fe967016e8
parentcf1b8a921b4a1b660648925377783b7bbe92fb3e
dpif-linux: Avoid pessimal behavior when kernel-to-user buffers overflow.

When a kernel-to-user Netlink buffer overflows, the kernel reports
ENOBUFS without passing along an actual message.  When it does this,
we should immediately try again, because we know that there is a
message waiting, instead of reporting the error to the caller.

This improves the OVS response rate to "hping3 --flood" traffic by
a few percentage points in my testing.

Signed-off-by: Ben Pfaff <blp@nicira.com>
lib/dpif-linux.c