Re: 2.6.23-rc1: BUG_ON in kmap_atomic_prot()
From: Linus Torvalds
Date: Mon Jul 23 2007 - 17:28:59 EST
On Mon, 23 Jul 2007, Andrew Morton wrote:
>
> It'd be nice to get a clean trace. Are you able to obtain the full
> trace with CONFIG_FRAME_POINTER=y?
If you are talking about
http://userweb.kernel.org/~akpm/dsc03659.jpg
then I think that _is_ a full trace. It's certainly not very messy, and it
seems accurate. It's just that inlining makes it much harder to see the
call-graphs, but that's what inlining does..
For example, missing from the call graph is
get_page_from_freelist ->
buffered_rmqueue -> [ missing - inlined ]
prep_new_page -> [ missing - inlined ]
prep_zero_page -> [ missing - inlined ]
clear_highpage -> [ missing - inlined ]
kmap_atomic -> [ missing - tailcall ]
kmap_atomic_prot
but I'm pretty sure the call trace is good (and I'm also pretty sure gcc
is overly aggressive at inlining, and that it causes us pain for
debugging, but whatever)
The earlier part of the trace looks fine too.
The only odd part I see is the existence of "dput()" there, so maybe it's
not *quite* clean and enabling frame pointers might get rid of a few bogus
entries, but it looks pretty close to clean.
Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/