From owner-svn-src-user@FreeBSD.ORG Mon Nov 28 17:26:19 2011 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6120D106566C; Mon, 28 Nov 2011 17:26:19 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 5136A8FC08; Mon, 28 Nov 2011 17:26:19 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id pASHQJLc001121; Mon, 28 Nov 2011 17:26:19 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id pASHQJ5c001119; Mon, 28 Nov 2011 17:26:19 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201111281726.pASHQJ5c001119@svn.freebsd.org> From: Attilio Rao Date: Mon, 28 Nov 2011 17:26:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r228079 - user/attilio/vmcontention/sys/vm X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 28 Nov 2011 17:26:19 -0000 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