ARM: crash registers might be read from the wrong physical address
Hi Dave
*
I found a problem in arm.c that arm_get_crash_notes() is called too early. This has never been a problem until now.
*
arm_get_crash_notes() in arm.c
calls readmem(, KVADDR, )
which calls kvtop()
which calls machdep->kvtop that is arm_kvtop
*** which uses vt->vmalloc_start
*** vt->vmalloc_start is initialized in vm_init
*
From main_loop:
***** machdep_init(POST_GDB);
***** vm_init();
***** machdep_init(POST_VM);
*
arm_get_crash_notes() is currently called in the POST_GDB section of machdep_init, but should be moved to the POST_VM section. I put the comment and the code just before:
*
***** if (init_unwind_tables()) {
*
and then it works fine. Without this fix the crash registers might be read from the wrong physical address.
*
Jan
*
Jan Karlsson
Senior Software Engineer
MIB
*
Sony Mobile Communications
Tel: +46703062174
sonymobile.com
*
*
--
Crash-utility mailing list
Crash-utility@redhat.com
https://www.redhat.com/mailman/listinfo/crash-utility