Messages in this thread | | | Date | Thu, 1 Jun 2006 01:15:02 +0200 | From | Ingo Molnar <> | Subject | Re: 2.6.17-rc5-mm1 |
| |
* Ingo Molnar <mingo@elte.hu> wrote:
> Martin, is the box still somewhat operational after such a crash? If > yes then we could use my crash-tracer to see the kernel function call > history leading up to the crash: > > http://redhat.com/~mingo/lockdep-patches/latency-tracing-lockdep.patch > > just apply the patch, accept the offered Kconfig defaults and it will > be configured to do the trace-crashes thing. Reproduce the crash and > save /proc/latency_trace - it contains the execution history leading > up to the crash. (on the CPU that crashes) Should work on i386 and > x86_64. > > the trace is saved upon the first crash or lockdep assert that occurs > on the box. (but you'll have lockdep disabled, so it's the crash that > matters)
i just provoked a NULL pointer dereference with the tracer applied, and /proc/latency_trace contained the proper trace, leading up to the crash:
gettimeo-2333 0D... 2210us : trace_hardirqs_on (restore_nocheck) gettimeo-2333 0.... 2210us > sys_gettimeofday (00000000 00000000 0000007b) gettimeo-2333 0.... 2210us : sys_gettimeofday (sysenter_past_esp) gettimeo-2333 0D... 2211us : do_page_fault (error_code) gettimeo-2333 0D... 2211us : do_page_fault (c0123238 0 2) gettimeo-2333 0D... 2211us : do_page_fault (10202 202 7b) gettimeo-2333 0D... 2211us : trace_hardirqs_on (do_page_fault) gettimeo-2333 0.... 2211us : lockdep_acquire (do_page_fault)
for best trace output you should have KALLSYMS and KALLSYMS_ALL enabled.
of course it could happen that tracing makes your crash go away ...
Ingo - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |