vol: Do not give back not-checked-out vols
authorAndrew Deason <adeason@sinenomine.net>
Fri, 5 Nov 2010 21:48:28 +0000 (16:48 -0500)
committerDerrick Brashear <shadow@dementia.org>
Mon, 8 Nov 2010 03:11:18 +0000 (19:11 -0800)
commite890f090e11d09b6e6b929642cbd92a56fb6e66e
tree453fef40b109d463391ffa857a2b9784af2887cd
parente4250dc64eb26b5da1480e9f5bd58d016f81847f
vol: Do not give back not-checked-out vols

VAttachVolumeByName_r has logic to give back a volume over FSSYNC if
we checked out a volume but failed to attach it for whatever reason.
However, the logic used for determining if the volume was checked out
or not is a bit inaccurate (even moreso than the comments imply),
potentially causing us to VOL_ON volumes that don't exist at all.

Instead of trying to guess based on various conditions whether or not
we checked out the volume, keep track of a variable that is only set
when we actually checkout the volume from the fileserver. Then only
give back the volume if it is set.

Change-Id: I03197eca3e1a31a4b9566552eb9032fdc7cc5909
Reviewed-on: http://gerrit.openafs.org/3274
Tested-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
src/vol/volume.c