Subject: Re: libkvm problems on alpha, but not sparc or i386 (netbsd-1-6)
To: NetBSD/alpha Discussion List <port-alpha@NetBSD.org>
From: Nathan J. Williams <nathanw@wasabisystems.com>
List: port-alpha
Date: 09/30/2004 14:05:47
"Greg A. Woods" <woods@planix.com> writes:

> LOCKDEBUG seems to be the magic one that causes the most "damage" to
> kmem grovellers.  I don't think DEBUG even affects struct proc any more.
> Unfortunately LOCKDEBUG adds a lot of size to the lock and simplelock
> structures so I guess it's a bit too much to always include those
> fields.....

Yeah, it was a recollection from memory; I didn't bother to look up if
DEBUG was a likely cuplrit any more, but LOCKDEBUG is definitely
problematic.

> Perhaps if we had a "kern.snafu" sysctl that would report the values of
> DEBUG and LOCKDEBUG and such to libkvm then we could at least explain to
> the user why these tools fail and/or give broken/meaningless results....

Well, once you've got a kmem groveller, it could just check a kernel
variable too, but yes. It would be possible if slightly awkward for
libkvm to have both LOCKDEBUG and non-LOCKDEBUG versions of functions
that look at such structures, and figure out which one to use at
runtime. Not sure it's worth the effort, though.

        - Nathan