git: hammer2 - Consolidate backend rename ops
Matthew Dillon
dillon at crater.dragonflybsd.org
Wed Jul 26 23:17:05 PDT 2017
commit bc8b74b296f783863c6a3c79949ddc0baa341c33
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Wed Jul 26 22:34:50 2017 -0700
hammer2 - Consolidate backend rename ops
* Reduce frontend XOP ops required for rename from 3 to 2 by integrating
the unlink-target operation into xop_nrename. The xop_nrename backend
function now handles replacing the target namespace when it exists and
will also get rid of any duplicates as a safety.
* Adjust the frontend inode locking order to try to avoid deadlocks.
* Adjust iparent documentation.
* Properly set iparent in the rename operation. The iparent was not
being adjusted at all.
* Properly set iparent in the inode create operation. The iparent was
improperly being set to 0 instead 1 when the parent directory was the
mount point.
Summary of changes:
sys/vfs/hammer2/hammer2_disk.h | 6 ++-
sys/vfs/hammer2/hammer2_inode.c | 2 +-
sys/vfs/hammer2/hammer2_vfsops.c | 2 +
sys/vfs/hammer2/hammer2_vnops.c | 99 ++++++++++++++++++++++++++++++----------
sys/vfs/hammer2/hammer2_xops.c | 75 +++++++++++++++++++-----------
5 files changed, 130 insertions(+), 54 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/bc8b74b296f783863c6a3c79949ddc0baa341c33
--
DragonFly BSD source repository
More information about the Commits
mailing list