Check for HOSTDELETED before h_Hold_r
authorAndrew Deason <adeason@sinenomine.net>
Fri, 12 Feb 2010 23:44:31 +0000 (17:44 -0600)
committerDerrick Brashear <shadow@dementia.org>
Mon, 22 Feb 2010 18:35:24 +0000 (10:35 -0800)
commitb8c3c6add90ea3face9a16ff04a1024be3d8f32d
tree5618e6cfc5b4f460bd0b712de14f242cb18a2895
parent4dfbbd34ce66c09593a0b1a88831ec0f36848fe8
Check for HOSTDELETED before h_Hold_r

A few places h_Hold_r a host and later drop and reacquire H_LOCK without
checking if the hostFlags contains HOSTDELETED. This can cause a race
with h_TossStuff_r where we later reference a host that is about to be
freed or already has been freed.

Add checks for HOSTDELETED in these places, and skip over the deleted
hosts.

FIXES 126454

Change-Id: I5a61831f5afdbc908b82e4cf63cf14a34a36e275
Reviewed-on: http://gerrit.openafs.org/1305
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
src/viced/callback.c
src/viced/host.c