DAFS: Remove VOL_SALVAGE_INVALIDATE_HEADER
authorAndrew Deason <adeason@sinenomine.net>
Mon, 29 Aug 2011 22:41:31 +0000 (17:41 -0500)
committerDerrick Brashear <shadow@dementix.org>
Mon, 24 Oct 2011 20:14:04 +0000 (13:14 -0700)
commit4552dc552687267fce3c7a6a9c7f4a1e9395c8e5
tree13af482353473384774c517baaf8956eed9d560d
parentd171a5e059566cc99c5dd980039dd56233f91a67
DAFS: Remove VOL_SALVAGE_INVALIDATE_HEADER

Currently VRequestSalvage_r takes a flag,
VOL_SALVAGE_INVALIDATE_HEADER, which causes the header for the
specified volume to be freed (via FreeVolumeHeader). This is almost
never safe to do, since there may be other users of the specified
volume that can be accessing the volume header at the same time.

There is also no reason to invalidate the header at the time of the
VRequestSalvage_r call, since the header must be invalidated when we
detach the volume (other utilities may change header information). So,
if there are any problems in the future because we do not invalidate
the header at the time of VRequestSalvage_r, it is the fault of the
detachment/offlining logic.

So, remove VOL_SALVAGE_INVALIDATE_HEADER and all of its users. Take
this opportunity to correctly document the VRequestSalvage_r headers
in the VRequestSalvage_r comment, as it was previously missing the
VOL_SALVAGE_NO_OFFLINE flag.

Change-Id: I65c4cc0e81171aafa7b78ae9e1f503edb2f3f2c3
Reviewed-on: http://gerrit.openafs.org/5319
Reviewed-by: Derrick Brashear <shadow@dementix.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
src/vol/volume.c
src/vol/volume.h