git: sys/vfs/hammer: Erase btype of a new boundary on internal split
Tomohiro Kusumi
tkusumi at crater.dragonflybsd.org
Thu Sep 24 07:46:32 PDT 2015
commit b6361ed8756a5631fde2f9e5e719b69343f57759
Author: Tomohiro Kusumi <kusumi.tomohiro at gmail.com>
Date: Sat Sep 5 23:12:18 2015 +0900
sys/vfs/hammer: Erase btype of a new boundary on internal split
It's more sane to erase btype of RBN of the original node
on internal split than only erasing subtree_offset.
(subtree_offset==0 means the elm has no child, but btype
not being 0 means its child is either leaf or internal node
which is insane if not a bug)
This doesn't affect comparison of nodes because btype is
not a part of keys to determine > or = or < of nodes.
This also makes possible to write non-ambiguous test code
in userspace as it eliminates multiple possible ways that
test code needs to deal with and be more explicit, which is
considered a good thing if the kernel change doesn't degrade
performance, etc. Also see 6580f642.
Summary of changes:
sbin/hammer/cmd_show.c | 12 ++++++++----
sys/vfs/hammer/hammer_btree.c | 1 +
sys/vfs/hammer/hammer_btree.h | 10 ++++++++++
3 files changed, 19 insertions(+), 4 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/b6361ed8756a5631fde2f9e5e719b69343f57759
--
DragonFly BSD source repository
More information about the Commits
mailing list