]> git.michaelhowe.org Git - packages/o/openafs.git/commit
vol: Let non-usable volumes attach for non-DAFS
authorAndrew Deason <adeason@sinenomine.net>
Wed, 28 Nov 2012 23:22:21 +0000 (17:22 -0600)
committerStephan Wiesand <stephan.wiesand@desy.de>
Mon, 9 Sep 2013 08:38:44 +0000 (01:38 -0700)
commitfea397b0433ae3cc1155a3f826b0776eee23a497
tree7bc8878626f8c3eb6b1c850c044f833fcb09d9a3
parent115299e8aeedefa1c3f64e65f91a4ea0a5a2427f
vol: Let non-usable volumes attach for non-DAFS

Before DAFS, volumes that were not inService/blessed were not
accessible by normal clients, but were still allowed to attach. That
is, access to clients was prevented at VGetVolume-time, rather than at
attach-time. Commit 939382c5 tried to short-circuit this by detecting
this volume state at attach-time. However, volume utilities (e.g.
volserver) can give us back a volume over FSSYNC when they are done
with the volume, and for non-DAFS, we then try to attach the volume.
So, with 939382c5 that attachment will fail when volserver gives us
back a volume that is not inService/blessed (which can happen for some
normal volume operations).

This situation is not terrible, since either way the volume is not
usable by clients (since the volume didn't attach), and the volume is
still usable by volserver (since volserver is allowed to check out
nonexistent volumes). But it is a deviation from pre-DAFS behavior and
it can result in confusing error messages, so revert the 939382c5
behavior for non-DAFS.

For DAFS, this behavior is fine, since the fileserver does not attach
a volume unless it is trying to service a client request. So, leave it
for DAFS.

FIXES 131505

Reviewed-on: http://gerrit.openafs.org/8557
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
(cherry picked from commit 988f66c5c3bd4c4f23bfa53e69a52ed52c4e3ab9)

Change-Id: I08b55b30047fc19788e2c83ada1ecd80456f1f74
Reviewed-on: http://gerrit.openafs.org/9499
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
src/vol/volume.c