OpenAFS Master Repository branch, master, updated. openafs-devel-1_9_2-522-ga2b5c44
Gerrit Code Review
gerrit@openafs.org
Tue, 30 Jun 2026 15:44:11 -0400
The following commit has been merged in the master branch:
commit a2b5c444b1a41f726d25ce76104aac5867c4d7fd
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
Date: Fri Jun 12 13:24:31 2026 +0000
vol: Remove SrcMetadataMutable from DoCloneIndex()
Historically, OpenAFS only supported cloning read-write volumes.
However, several commits, such as 4b93c42513 (vol: allow clones of
readonly volumes), extended cloning support to allow any volume type to
be cloned into any other volume type.
As part of that change, DoCloneIndex() stopped checking whether the
source volume was writable and instead unconditionally enabled source
metadata updates by setting 'ReadWriteOriginal' to 1. The variable was
later renamed to 'SrcMetadataMutable' in change I64ebcb8001 (vol: Rename
rw variables in DoCloneIndex() to src), but it remained permanently
enabled. As a result, DoCloneIndex() has updated source volume metadata
(such as the vnode cloned flag, V_filecount, and V_diskused) without
checking whether the source volume is writable ever since.
The variable appears to have been retained to preserve the possibility
of suppressing source metadata updates when the fileserver is running
with '-readonly'. The volume server has no way to determine whether the
fileserver was started with that option, but even if it could,
suppressing these updates doesn't seem to make sense: other metadata
(e.g., V_backupId and V_backupDate) is already modified elsewhere in the
cloning path, and failing to set the 'cloned' flag in RW dir vnodes
would cause serious problems if the '-readonly' flag were ever removed
and the dir was modified later.
Remove 'SrcMetadataMutable' and make the behavior more clear.
Change-Id: I0aeb4e1626831e2f871e2ff47aa62d7bc3400369
Reviewed-on: https://gerrit.openafs.org/16845
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
src/vol/clone.c | 16 +++++-----------
1 file changed, 5 insertions(+), 11 deletions(-)
--
OpenAFS Master Repository