How to debug i386-linux.kernel.vmlinu[xz] under qemu
This commit is contained in:
@@ -40,8 +40,13 @@
|
|||||||
; In:
|
; In:
|
||||||
; #eax= &uncompressed [and final entry]; #ds= #es= __BOOT_DS
|
; #eax= &uncompressed [and final entry]; #ds= #es= __BOOT_DS
|
||||||
; #esp: &compressed; __BOOT_CS
|
; #esp: &compressed; __BOOT_CS
|
||||||
|
|
||||||
|
How to debug: run under qemu (http://fabrice.bellard.free.fr/qemu/)
|
||||||
|
after un-commenting the 0xf1 opcode below. That opcode forces qemu
|
||||||
|
to stop in gdb. You'll have to "set $pc+=1" by hand.
|
||||||
*/
|
*/
|
||||||
section LINUX000
|
section LINUX000
|
||||||
|
//// .byte 0xf1 // qemu In-Circuit-Emulator breakpoint
|
||||||
pop edx // &compressed; length at -4(#edx)
|
pop edx // &compressed; length at -4(#edx)
|
||||||
|
|
||||||
push eax // MATCH00(1/2) entry address; __BOOT_CS
|
push eax // MATCH00(1/2) entry address; __BOOT_CS
|
||||||
|
|||||||
@@ -34,7 +34,13 @@
|
|||||||
// ============= ENTRY POINT
|
// ============= ENTRY POINT
|
||||||
// =============
|
// =============
|
||||||
|
|
||||||
|
/*
|
||||||
|
How to debug: run under qemu (http://fabrice.bellard.free.fr/qemu/)
|
||||||
|
after un-commenting the 0xf1 opcode below. That opcode forces qemu
|
||||||
|
to stop in gdb. You'll have to "set $pc+=1" by hand.
|
||||||
|
*/
|
||||||
section LINUZ000
|
section LINUZ000
|
||||||
|
//// .byte 0xf1 // qemu In-Circuit-Emulator breakpoint
|
||||||
//cli // this must be true already
|
//cli // this must be true already
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
Reference in New Issue
Block a user