Created
October 12, 2018 17:42
-
-
Save vwvw/9ec5346da10f41e9c74c0b1a3e40dbaf to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(tfuzz_test) ➜ i386-linux-user git:(e5b3a24) gdb | |
GNU gdb (Ubuntu 7.11.1-0ubuntu1~16.5) 7.11.1 | |
Copyright (C) 2016 Free Software Foundation, Inc. | |
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> | |
This is free software: you are free to change and redistribute it. | |
There is NO WARRANTY, to the extent permitted by law. Type "show copying" | |
and "show warranty" for details. | |
This GDB was configured as "x86_64-linux-gnu". | |
Type "show configuration" for configuration details. | |
For bug reporting instructions, please see: | |
<http://www.gnu.org/software/gdb/bugs/>. | |
Find the GDB manual and other documentation resources online at: | |
<http://www.gnu.org/software/gdb/documentation/>. | |
For help, type "help". | |
Type "apropos word" to search for commands related to "word". | |
(gdb) target remote localhost:1234 | |
^Clocalhost:1234: Connection refused. | |
(gdb) target remote localhost:1234 | |
Remote debugging using localhost:1234 | |
Reading /root/qemu/i386-linux-user/qemu-i386 from remote target... | |
warning: File transfers from remote targets can be slow. Use "set sysroot" to access files locally instead. | |
Reading /root/qemu/i386-linux-user/qemu-i386 from remote target... | |
Reading symbols from target:/root/qemu/i386-linux-user/qemu-i386...done. | |
Reading /lib64/ld-linux-x86-64.so.2 from remote target... | |
Reading /lib64/ld-linux-x86-64.so.2 from remote target... | |
Reading symbols from target:/lib64/ld-linux-x86-64.so.2...Reading /lib64/ld-2.23.so from remote target... | |
Reading /lib64/.debug/ld-2.23.so from remote target... | |
(no debugging symbols found)...done. | |
0x00007ffff7dd7c30 in ?? () from target:/lib64/ld-linux-x86-64.so.2 | |
(gdb) ni 256 | |
Reading /lib/x86_64-linux-gnu/libglib-2.0.so.0 from remote target... | |
Reading /lib/x86_64-linux-gnu/librt.so.1 from remote target... | |
Reading /lib/x86_64-linux-gnu/libm.so.6 from remote target... | |
Reading /lib/x86_64-linux-gnu/libpthread.so.0 from remote target... | |
Reading /lib/x86_64-linux-gnu/libc.so.6 from remote target... | |
Reading /lib/x86_64-linux-gnu/libpcre.so.3 from remote target... | |
Reading /lib/x86_64-linux-gnu/librt-2.23.so from remote target... | |
Reading /lib/x86_64-linux-gnu/.debug/librt-2.23.so from remote target... | |
Reading /lib/x86_64-linux-gnu/libm-2.23.so from remote target... | |
Reading /lib/x86_64-linux-gnu/.debug/libm-2.23.so from remote target... | |
Reading /lib/x86_64-linux-gnu/libc-2.23.so from remote target... | |
Reading /lib/x86_64-linux-gnu/.debug/libc-2.23.so from remote target... | |
Reading /lib/x86_64-linux-gnu/libpcre.so.3.13.2 from remote target... | |
Reading /lib/x86_64-linux-gnu/.debug/libpcre.so.3.13.2 from remote target... | |
Warning: | |
Cannot insert breakpoint 0. | |
Cannot access memory at address 0x8 | |
0x00007ffff7dd7c49 in ?? () from target:/lib64/ld-linux-x86-64.so.2 | |
(gdb) ni 256 | |
[New Thread 32653.32656] | |
0x00000000600354af 287 trapnr = cpu_x86_exec(env); | |
(gdb) ni 256 | |
301 break; | |
(gdb) n | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
288 cpu_exec_end(cs); | |
(gdb) | |
289 switch(trapnr) { | |
(gdb) | |
299 env->regs[R_EBP], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
298 env->regs[R_EDI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
297 env->regs[R_ESI], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
296 env->regs[R_EDX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
295 env->regs[R_ECX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
294 env->regs[R_EBX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
293 env->regs[R_EAX], | |
(gdb) | |
292 env->regs[R_EAX] = do_syscall(env, | |
(gdb) | |
301 break; | |
(gdb) | |
429 process_pending_signals(env); | |
(gdb) | |
430 } | |
(gdb) | |
286 cpu_exec_start(cs); | |
(gdb) | |
287 trapnr = cpu_x86_exec(env); | |
(gdb) | |
Thread 1 "qemu-i386" received signal SIGSEGV, Segmentation fault. | |
0x000000006005c4d9 in ldub_p (ptr=0x7ffefc55d013) | |
at /root/qemu/include/qemu/bswap.h:235 | |
235 return *(uint8_t *)ptr; | |
(gdb) | |
host_signal_handler (host_signum=-1, info=0x60057f4b <symcmp>, | |
puc=0x62405ef0) at /root/qemu/linux-user/signal.c:574 | |
574 { | |
(gdb) | |
575 CPUArchState *env = thread_cpu->env_ptr; | |
(gdb) | |
581 if ((host_signum == SIGSEGV || host_signum == SIGBUS) | |
(gdb) | |
582 && info->si_code > 0) { | |
(gdb) | |
583 if (cpu_signal_handler(host_signum, info, puc)) | |
(gdb) | |
0x000000006000ba6c in cpu_x86_exec (env=0x62415d00) | |
at /root/qemu/cpu-exec.c:402 | |
402 if (sigsetjmp(cpu->jmp_env, 0) == 0) { | |
(gdb) | |
568 cpu = current_cpu; | |
(gdb) | |
569 env = cpu->env_ptr; | |
(gdb) | |
570 cc = CPU_GET_CLASS(cpu); | |
(gdb) | |
571 cpu->can_do_io = 1; | |
(gdb) | |
573 x86_cpu = X86_CPU(cpu); | |
(gdb) | |
575 if (have_tb_lock) { | |
(gdb) | |
576 spin_unlock(&tcg_ctx.tb_ctx.tb_lock); | |
(gdb) | |
577 have_tb_lock = false; | |
(gdb) | |
580 } /* for(;;) */ | |
(gdb) l | |
575 if (have_tb_lock) { | |
576 spin_unlock(&tcg_ctx.tb_ctx.tb_lock); | |
577 have_tb_lock = false; | |
578 } | |
579 } | |
580 } /* for(;;) */ | |
581 | |
582 cc->cpu_exec_exit(cpu); | |
583 rcu_read_unlock(); | |
584 | |
(gdb) list | |
585 /* fail safe : never use current_cpu outside cpu_exec() */ | |
586 current_cpu = NULL; | |
587 return ret; | |
588 } | |
(gdb) l | |
Line number 589 out of range; /root/qemu/cpu-exec.c has 588 lines. | |
(gdb) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment