From 01e35672433e033495beac5992becb06cc464cc4 Mon Sep 17 00:00:00 2001 From: alessio Date: Thu, 12 Sep 2024 16:48:00 +0200 Subject: [PATCH] Do not set SO_INCOMING_CPU We currently set SO_INCOMING_CPU incorrectly, and testing by Ondrej shows that fixing the issue and setting affinities is worse than letting the kernel schedule threads without constraints. So we should not set SO_INCOMING_CPU anymore. (cherry picked from commit 8b8149cdd289deaa3c5499e9afb0b70c094ba423) --- lib/isc/netmgr/netmgr-int.h | 6 ------ lib/isc/netmgr/netmgr.c | 14 -------------- lib/isc/netmgr/tcp.c | 1 - lib/isc/netmgr/tcpdns.c | 1 - lib/isc/netmgr/tlsdns.c | 1 - lib/isc/netmgr/udp.c | 3 --- 6 files changed, 26 deletions(-) diff --git a/lib/isc/netmgr/netmgr-int.h b/lib/isc/netmgr/netmgr-int.h index f4cb5dd8fc..b4f1dd37fe 100644 --- a/lib/isc/netmgr/netmgr-int.h +++ b/lib/isc/netmgr/netmgr-int.h @@ -1978,12 +1978,6 @@ isc__nm_socket_reuse_lb(uv_os_sock_t fd); * Set the SO_REUSEPORT_LB (or equivalent) socket option on the fd */ -isc_result_t -isc__nm_socket_incoming_cpu(uv_os_sock_t fd); -/*%< - * Set the SO_INCOMING_CPU socket option on the fd if available - */ - isc_result_t isc__nm_socket_disable_pmtud(uv_os_sock_t fd, sa_family_t sa_family); /*%< diff --git a/lib/isc/netmgr/netmgr.c b/lib/isc/netmgr/netmgr.c index a42ca90e8d..3034390a34 100644 --- a/lib/isc/netmgr/netmgr.c +++ b/lib/isc/netmgr/netmgr.c @@ -3340,20 +3340,6 @@ isc__nm_socket_reuse_lb(uv_os_sock_t fd) { #endif } -isc_result_t -isc__nm_socket_incoming_cpu(uv_os_sock_t fd) { -#ifdef SO_INCOMING_CPU - if (setsockopt_on(fd, SOL_SOCKET, SO_INCOMING_CPU) == -1) { - return (ISC_R_FAILURE); - } else { - return (ISC_R_SUCCESS); - } -#else - UNUSED(fd); -#endif - return (ISC_R_NOTIMPLEMENTED); -} - isc_result_t isc__nm_socket_disable_pmtud(uv_os_sock_t fd, sa_family_t sa_family) { /* diff --git a/lib/isc/netmgr/tcp.c b/lib/isc/netmgr/tcp.c index 7c77b6cb74..9524a72cf0 100644 --- a/lib/isc/netmgr/tcp.c +++ b/lib/isc/netmgr/tcp.c @@ -383,7 +383,6 @@ isc__nm_tcp_lb_socket(isc_nm_t *mgr, sa_family_t sa_family) { result = isc__nm_socket(sa_family, SOCK_STREAM, 0, &sock); RUNTIME_CHECK(result == ISC_R_SUCCESS); - (void)isc__nm_socket_incoming_cpu(sock); (void)isc__nm_socket_v6only(sock, sa_family); /* FIXME: set mss */ diff --git a/lib/isc/netmgr/tcpdns.c b/lib/isc/netmgr/tcpdns.c index 6ce4a61e68..39575a9fa5 100644 --- a/lib/isc/netmgr/tcpdns.c +++ b/lib/isc/netmgr/tcpdns.c @@ -346,7 +346,6 @@ isc__nm_tcpdns_lb_socket(isc_nm_t *mgr, sa_family_t sa_family) { result = isc__nm_socket(sa_family, SOCK_STREAM, 0, &sock); RUNTIME_CHECK(result == ISC_R_SUCCESS); - (void)isc__nm_socket_incoming_cpu(sock); (void)isc__nm_socket_v6only(sock, sa_family); /* FIXME: set mss */ diff --git a/lib/isc/netmgr/tlsdns.c b/lib/isc/netmgr/tlsdns.c index b56e0682b1..afe7bcdfab 100644 --- a/lib/isc/netmgr/tlsdns.c +++ b/lib/isc/netmgr/tlsdns.c @@ -456,7 +456,6 @@ isc__nm_tlsdns_lb_socket(isc_nm_t *mgr, sa_family_t sa_family) { result = isc__nm_socket(sa_family, SOCK_STREAM, 0, &sock); RUNTIME_CHECK(result == ISC_R_SUCCESS); - (void)isc__nm_socket_incoming_cpu(sock); (void)isc__nm_socket_v6only(sock, sa_family); /* FIXME: set mss */ diff --git a/lib/isc/netmgr/udp.c b/lib/isc/netmgr/udp.c index f9f528ffb1..7e8d6d077f 100644 --- a/lib/isc/netmgr/udp.c +++ b/lib/isc/netmgr/udp.c @@ -94,7 +94,6 @@ isc__nm_udp_lb_socket(isc_nm_t *mgr, sa_family_t sa_family) { result = isc__nm_socket(sa_family, SOCK_DGRAM, 0, &sock); RUNTIME_CHECK(result == ISC_R_SUCCESS); - (void)isc__nm_socket_incoming_cpu(sock); (void)isc__nm_socket_disable_pmtud(sock, sa_family); (void)isc__nm_socket_v6only(sock, sa_family); @@ -1064,8 +1063,6 @@ isc_nm_udpconnect(isc_nm_t *mgr, isc_sockaddr_t *local, isc_sockaddr_t *peer, RUNTIME_CHECK(result == ISC_R_SUCCESS || result == ISC_R_NOTIMPLEMENTED); - (void)isc__nm_socket_incoming_cpu(sock->fd); - (void)isc__nm_socket_disable_pmtud(sock->fd, sa_family); (void)isc__nm_socket_min_mtu(sock->fd, sa_family);