http://www.mjmwired.net/kernel/Documentation/oops-tracing.txt
From: Linus Torvalds
77 The other thing to do is disassemble the "Code:" part of the bug report:
78 ksymoops will do this too with the correct tools, but if you don't have
79 the tools you can just do a silly program:
80
81 char str[] = "\xXX\xXX\xXX...";
82 main(){}
83
84 and compile it with gcc -g and then do "disassemble str" (where the "XX"
85 stuff are the values reported by the Oops - you can just cut-and-paste
86 and do a replace of spaces to "\x" - that's what I do, as I'm too lazy
87 to write a program to automate this all).
88
89 Alternatively, you can use the shell script in scripts/decodecode.
90 Its usage is: decodecode < oops.txt
http://www.cs.purdue.edu/homes/hosking/502/spim/node23.html
The calling convention described in this section is the one used by gcc
http://www.embeddedrelated.com/usenet/embedded/show/31646-1.php
http://www.cs.uaf.edu/~cs301/notes/Chapter9/node11.html
Stack Frame
http://www.cs.uaf.edu/~cs301/notes/Chapter9/node1.html
http://chortle.ccsu.edu/AssemblyTutorial/Chapter-28/ass28_4.html
http://geeksoul.org/140
gcc -O9 -ffast-math -fomit-frame-pointer
http://en.wikipedia.org/wiki/Call_stack
http://blogmarks.net/marks/tag/TAMPOLINE
http://wiki.kldp.org/wiki.php/GccOptionOmitFramePointer
http://www.osdev.org/osfaq2/index.php/InterruptServiceRoutines
沒有留言:
張貼留言