cvs commit: src/sys/alpha/alpha support.s src/sys/i386/i386 swtch.s src/sys/kern kern_shutdown.c src/sys/sys systm.h

Bruce Evans bde at zeta.org.au
Wed Jan 21 17:47:39 PST 2004


On Wed, 21 Jan 2004, Don Lewis wrote:

> On 21 Jan, Bruce Evans wrote:
> > On Tue, 20 Jan 2004, Don Lewis wrote:
> >
> >> What about the case of macros like KASSERT() and the vnode lock
> >> assertions?  Won't they report the name and line number of the #define?
> >
> > Er, macros don't work like that.
> >
> > KASSERT() expands to a call to panic() (and other things) inline, so
> > it gets the name and line number from the file that has the KASSERT().
>
> I could swear that I've ended up in .h files when doing kernel
> debugging.  My simple userland test case acts like you describe.  I
> suspect what I'm thinking of is the inline functions in vnode_if.h.

Yes, support for debugging inline functions can be too good in some
cases.  Low-level inlines like __curthread() are especially uninteresting.

Bruce


More information about the cvs-all mailing list