arrfab / rpms / glibc

Forked from rpms/glibc 5 years ago
Clone

Blame SOURCES/glibc-rh1435615.patch

147e83
From 3de93d194a5d27cabfe40ddf58aea36939498ba4 Mon Sep 17 00:00:00 2001
147e83
From: DJ Delorie <dj@redhat.com>
147e83
Date: Mon, 25 Sep 2017 19:43:09 -0400
147e83
Subject: nscd: Release read lock after resetting timeout.
147e83
147e83
	[BZ #22161]
147e83
	* nscd/netgroupcache.c (addinnetgrX): Release read lock after
147e83
	resetting timeout.
147e83
147e83
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
147e83
Reviewed-by: Andreas Schwab <schwab@suse.de>
147e83
147e83
A lock is held by mempool_allocate() when CACHEABLE is true; we
147e83
must release this lock if we exit early.
147e83
147e83
diff -rup a/nscd/netgroupcache.c b/nscd/netgroupcache.c
147e83
--- a/nscd/netgroupcache.c	2017-09-19 15:37:22.000000000 -0400
147e83
+++ b/nscd/netgroupcache.c	2017-09-20 16:33:54.982679050 -0400
147e83
@@ -586,6 +586,8 @@ addinnetgrX (struct database_dyn *db, in
147e83
       dh->timeout = timeout;
147e83
       dh->ttl = dataset->head.ttl;
147e83
       ++dh->nreloads;
147e83
+      if (cacheable)
147e83
+	pthread_rwlock_unlock (&db->lock);
147e83
       return timeout;
147e83
     }
147e83