]> git.michaelhowe.org Git - packages/o/openafs.git/commit
volser: Do not FSYNC_VOL_DONE temporary volumes
authorAndrew Deason <adeason@sinenomine.net>
Thu, 30 Sep 2010 16:34:59 +0000 (11:34 -0500)
committerDerrick Brashear <shadow@dementia.org>
Wed, 8 Dec 2010 00:03:57 +0000 (16:03 -0800)
commit0bddd655c9fff2386ef605c03546beca038d2bf4
tree21af821c9942516c6841b658f0e93b85e77302ed
parentb11f35353a19d760820dad80441aead7594408d3
volser: Do not FSYNC_VOL_DONE temporary volumes

Currently, the volserver just looks at the destroyMe field in a volume
header to see if it should tell the fileserver a volume has been
deleted (FSYNC_VOL_DONE opcode). However, temporary volumes created by
the volserver (such as new volumes or clones) have destroyMe set, but
are obviously not deleted, and so the fileserver should just be told
FSYNC_VOL_LEAVE_OFF about these volumes instead.

With commit bb9caf9822a53ad07cd3a5d6cea7f6b7eeeedd59, FSYNC_VOL_DONE
and FSYNC_VOL_LEAVE_OFF actually do different things, so this does
make a difference.

Note that this commit slightly changes the meaning of the
vp->needsPutBack field. Now it must be set to VOL_PUTBACK_DELETE to
tell the fileserver that the volume has been deleted, and set to
VOL_PUTBACK if it just needs to be given back to the fileserver.

Reviewed-on: http://gerrit.openafs.org/2872
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 5988923898e15cb50d550e54119869b38cb5bc5b)
Change-Id: I1cbc48537a0b038838a8bc102842b05195d685c3
Reviewed-on: http://gerrit.openafs.org/3481
src/vol/volume.c
src/vol/volume.h
src/volser/volprocs.c