]> git.michaelhowe.org Git - packages/o/openafs.git/commit
LINUX: Hold GLOCK for proc traversal
authorAndrew Deason <adeason@sinenomine.net>
Thu, 26 Jul 2012 21:40:03 +0000 (16:40 -0500)
committerDerrick Brashear <shadow@dementix.org>
Tue, 31 Jul 2012 18:21:52 +0000 (11:21 -0700)
commit0910046da6c0f08768d3d7cb983ce843572498d2
tree1142f2167566497c30a8b0c429382549c46c6fbd
parent5b497f6bb4dba37f4768b1eae3abbe71e67b4d40
LINUX: Hold GLOCK for proc traversal

The functions that traverse unixuser structures for display via /proc
(uu_start et al) call various libafs functions hold and release locks,
etc. To do any of that, we need GLOCK. Amongst other issues, we can
panic if we try to acquire a contested lock without GLOCK, since we
assert glock is held when we sleep for the lock or try to wake other
waiters. The same goes for the legacy CellServDB proc file.

So, hold and release GLOCK as appropriate.

Reviewed-on: http://gerrit.openafs.org/7885
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Chas Williams - CONTRACTOR <chas@cmf.nrl.navy.mil>
Reviewed-by: Derrick Brashear <shadow@dementix.org>
(cherry picked from commit 5237d3d232f22aaf4f67f3a8727a293f4058a7ae)

Change-Id: I5895b4bde32b8efa27abc83cc6b9dab7458d5c75
Reviewed-on: http://gerrit.openafs.org/7914
Reviewed-by: Derrick Brashear <shadow@dementix.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
src/afs/LINUX/osi_proc.c