mirror of
https://git.openafs.org/openafs.git
synced 2025-01-18 23:10:58 +00:00
viced: fix missing host lock in h_Enumerate
The global host lock must be held over h_Release_r. Fix the the case in h_Enumerate where h_Release_r is called without the global host lock held. Change-Id: I010338edf0a515f543e3468afff907e97eb07163 Reviewed-on: http://gerrit.openafs.org/3294 Reviewed-by: Andrew Deason <adeason@sinenomine.net> Tested-by: BuildBot <buildbot@rampaginggeek.com> Reviewed-by: Derrick Brashear <shadow@dementia.org>
This commit is contained in:
parent
fabd590cc4
commit
c8dc68299d
@ -1014,7 +1014,9 @@ h_Enumerate(int (*proc) (struct host*, int, void *), void *param)
|
||||
H_UNLOCK;
|
||||
for (i = 0; i < count; i++) {
|
||||
flags[i] = (*proc) (list[i], flags[i], param);
|
||||
H_LOCK;
|
||||
h_Release_r(list[i]);
|
||||
H_UNLOCK;
|
||||
/* bail out of the enumeration early */
|
||||
if (H_ENUMERATE_ISSET_BAIL(flags[i]))
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user