Thread (1 message) 1 message, 1 author, 2002-10-23

Re: 2.5.44: How to decode call trace

flat view

From: Olaf Dietsche <hidden>
Date: 2002-10-23 10:27:31
Also in: lkml

Andi Kleen [off-list ref] writes:
Olaf Dietsche <olaf.dietsche#list.linux-kernel-zqRNUXuvxA0b1SvskN2V4Q@public.gmane.org> writes:
quoted
and this is the code:
static int __fscap_lookup(struct vfsmount *mnt, struct nameidata *nd)
{
	static char name[] = ".capabilities";
	nd->mnt = mntget(mnt);
	nd->dentry = dget(mnt->mnt_sb->s_root);
	nd->flags = 0;
	return path_walk(name, nd);
}

What does .text.lock.namei and name.810 mean?
.text.lock.namei means that it hung in the slow path of a spinlock that
is referenced from namei.c
I guess this is what __down_failed means.
name.810 is a static data variable, probably the static char name[]
shown above. Remember the kernel backtrace is not exact and can print
random stack junk that looks like return addresses too. You always have 
to sanity check each entry.
Ok, I'll keep that in mind.
quoted
Is there a way to get the line number out of these hex values?
addr2line -e vmlinux ... does this when you compile the kernel with -g 
Great! This is what I was searching for.

When I build with "make -k EXTRA_CFLAGS=-g EXTRA_LDFLAGS=-g bzImage",
I get a ton of error messages from drivers/acpi/include/actypes.h and
other acpi related stuff, starting with: #error ACPI_MACHINE_WIDTH not
defined. Maybe this is not the usual way to build with -g, but I don't
get these errors with "make -k bzImage". Maybe someone is interested
in this.

Anyway, I come around this by first building with "EXTRA_CFLAGS=-g
EXTRA_LDFLAGS=-g", ignoring the error messages and then a second try
with only EXTRA_LDFLAGS=-g.

Regards, Olaf.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help