From 60c9e2975bd77f26fee07e5f15fe24f2b99b60ed Mon Sep 17 00:00:00 2001 From: Egor Shestakov Date: Wed, 25 Feb 2026 16:52:33 +0000 Subject: [PATCH] BUG/MINOR: sock: adjust accept() error messages for ENFILE and ENOMEM In the ENFILE and ENOMEM cases, when accept() fails, an irrelevant global.maxsock value was printed that doesn't reflect system limits. Now the actconn is printed that gives a hint about the failure reasons. Should be backported in all stable branches. --- src/sock.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/sock.c b/src/sock.c index c1e88413f..5524d6617 100644 --- a/src/sock.c +++ b/src/sock.c @@ -162,8 +162,8 @@ struct connection *sock_accept_conn(struct listener *l, int *status) case ENFILE: if (p) send_log(p, LOG_EMERG, - "Proxy %s reached system FD limit (maxsock=%d). Please check system tunables.\n", - p->id, global.maxsock); + "Proxy %s reached system FD limit (actconn=%d). Please check system tunables.\n", + p->id, actconn); ret = CO_AC_PAUSE; break; @@ -179,8 +179,8 @@ struct connection *sock_accept_conn(struct listener *l, int *status) case ENOMEM: if (p) send_log(p, LOG_EMERG, - "Proxy %s reached system memory limit (maxsock=%d). Please check system tunables.\n", - p->id, global.maxsock); + "Proxy %s reached system memory limit (actconn=%d). Please check system tunables.\n", + p->id, actconn); ret = CO_AC_PAUSE; break;