Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 22 Jan 2004 12:47:34 +1100 (EST)
From:      Bruce Evans <bde@zeta.org.au>
To:        Don Lewis <truckman@FreeBSD.org>
Cc:        cvs-all@FreeBSD.org
Subject:   Re: 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
Message-ID:  <20040122124351.H10548@gamplex.bde.org>
In-Reply-To: <200401211257.i0LCvr7E061707@gw.catspoiler.org>
References:  <200401211257.i0LCvr7E061707@gw.catspoiler.org>

next in thread | previous in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040122124351.H10548>