Fix lock handling in memory hander of nscd.
authorPetr Baudis <pasky@suse.cz>
Thu, 16 Jul 2009 17:10:10 +0000 (10:10 -0700)
committerUlrich Drepper <drepper@redhat.com>
Thu, 16 Jul 2009 17:10:10 +0000 (10:10 -0700)
commit137028b4d7e50f71906c1656c27079eac5a1d085
tree61b121088c68e50ff2483cd15675729cf3c337e7
parent50158f95525ca59459a90f2a7bc65ceb892a0807
Fix lock handling in memory hander of nscd.

The commit 20e498bd removes the pthread_mutex_rdlock() calls, but not the
corresponding pthread_mutex_unlock() calls. Also, the database lock is never
unlocked in one branch of the mempool_alloc() if.

I think unreproducible random assert(dh->usable) crashes in prune_cache() were
caused by this. But an easy way to make nscd threads hang with the broken
locking was.
ChangeLog
nscd/aicache.c
nscd/grpcache.c
nscd/hstcache.c
nscd/initgrcache.c
nscd/mem.c
nscd/pwdcache.c
nscd/servicescache.c