Subject: kern/37531: lockdebug appears broken
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: None <ad@netbsd.org>
List: netbsd-bugs
Date: 12/13/2007 09:55:00
>Number:         37531
>Category:       kern
>Synopsis:       lockdebug appears broken
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Dec 13 09:55:00 +0000 2007
>Originator:     Andrew Doran
>Release:        4.99.40/vmlocking
>Organization:
The NetBSD Project
>Environment:
Dual core cpu.
>Description:
LOCKDEBUG frequently reports bogus errors, usually "already initialized"
or "freeing active lock". Very often, it happens on two CPUs at once
which suggests major corruption.

>How-To-Repeat:
The quickest way I have found is to run SGI fsstress on /tmp, using
a kernel from the vmlocking branch.

  http://people.freebsd.org/~kan/fsstress.tar.gz

fsstress -p 10 -d /tmp -n 100000 will usually break it.

I have tried backing out the spinning rwlock changes and replacing the
libkern rbtree with one built on sys/tree.h but that does not fix it.
A variety of paranoid changes and assertions do not help.
>Fix:
Unknown as yet.