Winbindd limited by select

Ken Cross kcross at
Wed Feb 12 12:36:19 GMT 2003


I've run into a problem with winbindd in both 2.2.x and 3.0 where it
just locks up after a while on large, busy networks.

We finally tracked down the problem to the fact that the C library
"select" function is limited by default to 256 file descriptors in
NetBSD (1024 in FreeBSD, 2048 in Linux).  So once 256 (or whatever) smbd
processes connected to winbindd, it broke pretty badly and was very hard
to kill.

This is set at compile-time, not run-time.  This line:

 #define FD_SETSIZE 2048  /* Max # of winbindd connections */

must occur before the first invocation of <sys/types>.

This could be a build option, but it might be much simpler to hard-code
it in local.h, which is what I did to fix it.

Can somebody check the implications of this on Solaris, HPUX, etc.?

Ken Cross
Network Storage Solutions

More information about the samba-technical mailing list