2.6.3 Heisenbug in unwind.c

From: Keith Owens <kaos_at_sgi.com>
Date: 2004-02-24 23:05:37
I am seeing a Heisenbug in the 2.6.3 kernel unwind code.  The symptoms
are that the backtrace terminates early, usually failing to unwind past
an interrupt frame.  Andreas, this _may_ be what you are seeing.

Changing the config options (sn2->dig) makes backtrace work again.
Turning on UNW_DEBUG to debug the unwinder makes backtrace work again :(.
Adding 30 dummy functions (which only call printk and are never called
themselves) to unwind.c makes the backtrace work again.

That last one really worries me.  All it does is shift the position of
the real unwind code within the kernel without changing the unwind code
itself.  Looks like an uninitialised pointer somewhere.

gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-24)
GNU assembler version 2.14.90.0.4 (ia64-unknown-linux-gnu) using BFD version 2.14.90.0.4 20030523

-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Received on Tue Feb 24 07:07:24 2004

This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:22 EST