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.
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;
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;