[CC += linux-api@xxxxxxxxxxxxxxx] Hello Alexander Since this is a kernel-user-space API change, please CC linux-api@ (and on future iterations of the patch). The kernel source file Documentation/SubmitChecklist notes that all Linux kernel patches that change userspace interfaces should be CCed to linux-api@xxxxxxxxxxxxxxx, so that the various parties who are interested in API changes are informed. For further information, see https://www.kernel.org/doc/man-pages/linux-api-ml.html Thanks, Michael On Thu, Mar 16, 2017 at 7:32 PM, Alexander Duyck <alexander.duyck@xxxxxxxxx> wrote: > This patch series is meant to add busy polling support to epoll when all of > the sockets on a given epoll are either local or are being sourced by the > same NAPI ID. > > In order to support this the first two patches clean up a few issues we > found with the NAPI ID tracking and infrastructure. > > In the third patch we introduce SO_INCOMING_NAPI_ID so that applications > have a means of trying to sort their incoming sockets to identify which > requests should be routed where in order to keep the epoll listener aligned > to a given Rx queue without having to rely on IRQ pinning. > > Finally the last two patches refactor the existing busy poll infrastructure > to make it so that we can call it without necessarily needing a socket, and > enable the bits needed to support epoll when all of the sockets on the > epoll either share the same NAPI ID, or simply are reporting no NAPI ID. > > --- > > Sridhar Samudrala (5): > net: Do not record sender_cpu as napi_id in socket receive paths > net: Call sk_mark_napi_id() in the ACK receive path > net: Introduce SO_INCOMING_NAPI_ID > net: Commonize busy polling code to focus on napi_id instead of socket > epoll: Add busy poll support to epoll with socket fds. > > > arch/alpha/include/uapi/asm/socket.h | 2 + > arch/avr32/include/uapi/asm/socket.h | 2 + > arch/frv/include/uapi/asm/socket.h | 2 + > arch/ia64/include/uapi/asm/socket.h | 2 + > arch/m32r/include/uapi/asm/socket.h | 2 + > arch/mips/include/uapi/asm/socket.h | 2 + > arch/mn10300/include/uapi/asm/socket.h | 2 + > arch/parisc/include/uapi/asm/socket.h | 2 + > arch/powerpc/include/uapi/asm/socket.h | 2 + > arch/s390/include/uapi/asm/socket.h | 2 + > arch/sparc/include/uapi/asm/socket.h | 2 + > arch/xtensa/include/uapi/asm/socket.h | 2 + > fs/eventpoll.c | 115 ++++++++++++++++++++++++++++++++ > include/net/busy_poll.h | 14 +++- > include/uapi/asm-generic/socket.h | 2 + > net/core/dev.c | 16 ++-- > net/core/sock.c | 22 ++++++ > net/ipv4/tcp_ipv4.c | 1 > 18 files changed, 183 insertions(+), 11 deletions(-) > > -- -- Michael Kerrisk Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/ Author of "The Linux Programming Interface", http://blog.man7.org/ -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html