https://bugzilla.novell.com/show_bug.cgi?id=214348 Summary: nscd becomes unresponsive with LDAP for group and passwd Product: SUSE Linux 10.1 Version: Final Platform: Other OS/Version: Other Status: NEW Severity: Normal Priority: P5 - None Component: Basesystem AssignedTo: bnc-team-screening@forge.provo.novell.com ReportedBy: ian.grant@cl.cam.ac.uk QAContact: qa@suse.de This bug appears in boith SLES10 and Suse Linux 10.1. It has been reported against SLES10 via another channel. It happens when LDAP is used to get group and paswd entries. The LDAP server can be local or remote. The LDAP servers are not heavily loaded and neither is the system that exhibits the problem. After some time (usually less than 1 hour) the nscd process becomes unresponsive so that an ssh connection from another machine takes a long time to establish: ig206$ time ssh hostname id Warning: No xauth data; using fake authentication data for X11 forwarding. uid=[... id output snipped ...] real 2m10.732s user 0m0.076s sys 0m0.065s During this time the load is not high: top - 12:46:37 up 7 days, 18:42, 4 users, load average: 0.01, 0.01, 0.00 Tasks: 95 total, 1 running, 94 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0% us, 0.0% sy, 0.0% ni, 100.0% id, 0.0% wa, 0.0% hi, 0.0% si Mem: 2058972k total, 1776248k used, 282724k free, 306780k buffers Swap: 4208944k total, 0k used, 4208944k free, 1063544k cached If the nscd service is stopped then the interactive response is instantly better. When the sysytem is in this unresponsive state processes frequently pause whilst polling the /var/run/nscd/socket file descriptor as shown in this strace output taken from the 'ls' command: [pid 10674] open("/etc/openldap/ldap.conf", O_RDONLY) = 4 [pid 10674] fstat(4, {st_mode=S_IFREG|0644, st_size=235, ...}) = 0 [pid 10674] mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2ae9347e0000 [pid 10674] read(4, "#\n# LDAP Defaults\n#\n\n# See ldap."..., 4096) = 235 [pid 10674] read(4, "", 4096) = 0 [pid 10674] close(4) = 0 [pid 10674] munmap(0x2ae9347e0000, 4096) = 0 [pid 10674] getuid() = 1696 [pid 10674] geteuid() = 1696 [pid 10674] open("/home/ig206/ldaprc", O_RDONLY) = -1 ENOENT (No such file or directory) [pid 10674] open("/home/ig206/.ldaprc", O_RDONLY) = 4 [pid 10674] fstat(4, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0 [pid 10674] mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2ae9347e0000 [pid 10674] read(4, "", 8192) = 0 [pid 10674] close(4) = 0 [pid 10674] munmap(0x2ae9347e0000, 8192) = 0 [pid 10674] open("ldaprc", O_RDONLY) = -1 ENOENT (No such file or directory) [pid 10674] stat("/etc/ldap.conf", {st_mode=S_IFREG|0644, st_size=385, ...}) = 0 [pid 10674] geteuid() = 1696 [pid 10674] brk(0x559000) = 0x559000 [pid 10674] socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 4 [pid 10674] setsockopt(4, SOL_TCP, TCP_NODELAY, [1], 4) = 0 [pid 10674] fcntl(4, F_GETFL) = 0x2 (flags O_RDWR) [pid 10674] fcntl(4, F_SETFL, O_RDWR|O_NONBLOCK) = 0 [pid 10674] connect(4, {sa_family=AF_INET, sin_port=htons(389), sin_addr=inet_addr("128.232.0.41")}, 16) = -1 EINPROGRESS (Operation now in progress) [pid 10674] poll([{fd=4, events=POLLOUT|POLLERR|POLLHUP, revents=POLLOUT}], 1, 5000) = 1 [pid 10674] getpeername(4, {sa_family=AF_INET, sin_port=htons(389), sin_addr=inet_addr("128.232.0.41")}, [4294967312]) = 0 [pid 10674] fcntl(4, F_GETFL) = 0x802 (flags O_RDWR|O_NONBLOCK) [pid 10674] fcntl(4, F_SETFL, O_RDWR) = 0 [pid 10674] write(4, "0\f\2\1\1`\7\2\1\3\4\0\200\0", 14) = 14 [pid 10674] poll([{fd=4, events=POLLIN|POLLPRI|POLLERR|POLLHUP, revents=POLLIN}], 1, 5000) = 1 [pid 10674] read(4, "0\f\2\1\1a\7\n", 8) = 8 [pid 10674] read(4, "\1\0\4\0\4\0", 6) = 6 [pid 10674] setsockopt(4, SOL_SOCKET, SO_KEEPALIVE, [0], 4) = 0 [pid 10674] fcntl(4, F_SETFD, FD_CLOEXEC) = 0 [pid 10674] getsockname(4, {sa_family=AF_INET, sin_port=htons(2411), sin_addr=inet_addr("128.232.11.51") }, [16]) = 0 [pid 10674] getpeername(4, {sa_family=AF_INET, sin_port=htons(389), sin_addr=inet_addr("128.232.0.41")}, [68719476752]) = 0 [pid 10674] write(4, "0\201\326\2\1\2c\201\320\4\"ou=People,dc=cl,dc=ca"..., 217) = 217 [pid 10674] poll([{fd=4, events=POLLIN|POLLPRI|POLLERR|POLLHUP, revents=POLLIN}], 1, 5000) = 1 [pid 10674] read(4, "0\202\1\2\2\1\2d", 8) = 8 [pid 10674] read(4, "\201\374\4,uid=ig206,ou=People,dc=cl,dc"..., 254) = 254 [pid 10674] poll([{fd=4, events=POLLIN|POLLPRI|POLLERR|POLLHUP, revents=POLLIN}], 1, 5000) = 1 [pid 10674] read(4, "0\f\2\1\2e\7\n", 8) = 8 [pid 10674] read(4, "\1\0\4\0\4\0", 6) = 6 [pid 10674] rt_sigaction(SIGPIPE, {0x4025f0, [HUP INT QUIT PIPE TERM TSTP], SA_RESTORER|SA_RESTART, 0x2a e93438eb20}, NULL, 8) = 0 [pid 10674] socket(PF_FILE, SOCK_STREAM, 0) = 5 [pid 10674] fcntl(5, F_GETFL) = 0x2 (flags O_RDWR) [pid 10674] fcntl(5, F_SETFL, O_RDWR|O_NONBLOCK) = 0 [pid 10674] connect(5, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = 0 [pid 10674] poll([{fd=5, events=POLLOUT|POLLERR|POLLHUP, revents=POLLOUT}], 1, 5000) = 1 [pid 10674] sendto(5, "\2\0\0\0\f\0\0\0\6\0\0\0group\0\247v", 20, MSG_NOSIGNAL, NULL, 0) = 20 [pid 10674] poll( -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.