svn commit: r228079 - user/attilio/vmcontention/sys/vm
Attilio Rao
attilio at FreeBSD.org
Mon Nov 28 17:26:19 UTC 2011
Author: attilio
Date: Mon Nov 28 17:26:19 2011
New Revision: 228079
URL: http://svn.freebsd.org/changeset/base/228079
Log:
Improve the diagnostic in the remove case.
Modified:
user/attilio/vmcontention/sys/vm/vm_radix.c
Modified: user/attilio/vmcontention/sys/vm/vm_radix.c
==============================================================================
--- user/attilio/vmcontention/sys/vm/vm_radix.c Mon Nov 28 17:19:05 2011 (r228078)
+++ user/attilio/vmcontention/sys/vm/vm_radix.c Mon Nov 28 17:26:19 2011 (r228079)
@@ -648,11 +648,11 @@ vm_radix_remove(struct vm_radix *rtree,
while (level && rnode) {
stack[level] = rnode;
slot = vm_radix_slot(index, level);
- rnode = rnode->rn_child[slot];
CTR6(KTR_VM,
"remove: tree %p, index %p, level %d, slot %d, rnode %p, child %p",
rtree, (void *)index, level, slot, rnode,
(rnode != NULL) ? rnode->rn_child[slot] : NULL);
+ rnode = rnode->rn_child[slot];
level--;
}
KASSERT(rnode != NULL,
@@ -663,6 +663,12 @@ vm_radix_remove(struct vm_radix *rtree,
("vm_radix_remove: index %jd not present in the tree.\n", index));
for (;;) {
+ CTR6(KTR_VM,
+"remove: resetting tree %p, index %p, level %d, slot %d, rnode %p, child %p",
+ rtree, (void *)index, level, slot, rnode,
+ (rnode != NULL) ? rnode->rn_child[slot] : NULL);
+ CTR3(KTR_VM, "remove: rnode %p, count %p, color %d",
+ rnode, (rnode != NULL) ? rnode->rn_count : NULL, color);
rnode->rn_child[slot] = NULL;
/*
* Use atomics for the last level since red and black
More information about the svn-src-user
mailing list