- $ gdb vmlinux
- GNU gdb (Debian 10.1-1.7) 10.1.90.20210103-git
- Copyright (C) 2021 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:
- <https://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"...
- Reading symbols from vmlinux...
- (gdb) disassemble acpi_ns_validate_handle
- Dump of assembler code for function acpi_ns_validate_handle:
- 0xffffffff815781cd <+0>: call 0xffffffff81062c40 <__fentry__>
- 0xffffffff815781d2 <+5>: push %r12
- 0xffffffff815781d4 <+7>: mov %rdi,%r12
- 0xffffffff815781d7 <+10>: call 0xffffffff81584a44 <acpi_ut_track_stack_ptr>
- 0xffffffff815781dc <+15>: lea -0x1(%r12),%rax
- 0xffffffff815781e1 <+20>: cmp $0xfffffffffffffffd,%rax
- 0xffffffff815781e5 <+24>: jbe 0xffffffff815781f0 <acpi_ns_validate_handle+35>
- 0xffffffff815781e7 <+26>: mov 0x189b44a(%rip),%r12 # 0xffffffff82e13638 <acpi_gbl_root_node>
- 0xffffffff815781ee <+33>: jmp 0xffffffff81578229 <acpi_ns_validate_handle+92>
- 0xffffffff815781f0 <+35>: mov %r12,%rdx
- 0xffffffff815781f3 <+38>: mov $0xffffffff81eca4c0,%rsi
- 0xffffffff815781fa <+45>: mov $0xffffffff82146d46,%rdi
- 0xffffffff81578201 <+52>: call 0xffffffff818909f1 <printk>
- 0xffffffff81578206 <+57>: cmpb $0xf,0x8(%r12)
- 0xffffffff8157820c <+63>: jne 0xffffffff81578226 <acpi_ns_validate_handle+89>
- 0xffffffff8157820e <+65>: mov %r12,%rdx
- 0xffffffff81578211 <+68>: mov $0xffffffff81eca4c0,%rsi
- 0xffffffff81578218 <+75>: mov $0xffffffff82146d46,%rdi
- 0xffffffff8157821f <+82>: call 0xffffffff818909f1 <printk>
- 0xffffffff81578224 <+87>: jmp 0xffffffff81578229 <acpi_ns_validate_handle+92>
- 0xffffffff81578226 <+89>: xor %r12d,%r12d
- 0xffffffff81578229 <+92>: mov %r12,%rax
- 0xffffffff8157822c <+95>: pop %r12
- 0xffffffff8157822e <+97>: ret
- End of assembler dump.
- (gdb) print 0xffffffff82146d46
- $1 = 18446744071596961094
- (gdb) print (char *)0xffffffff82146d46
- $2 = 0xffffffff82146d46 "\001\066%s handle: %p\n"
- (gdb) print (char *)0xffffffff81eca4c0
- $3 = 0xffffffff81eca4c0 <__func__.3> "acpi_ns_validate_handle"
- (gdb) disassemble printk
- Dump of assembler code for function printk:
- 0xffffffff818909f1 <+0>: call 0xffffffff81062c40 <__fentry__>
- 0xffffffff818909f6 <+5>: push %rbp
- 0xffffffff818909f7 <+6>: mov %rsp,%rbp
- 0xffffffff818909fa <+9>: sub $0x50,%rsp
- 0xffffffff818909fe <+13>: mov %rsi,0x28(%rsp)
- 0xffffffff81890a03 <+18>: mov %rsp,%rsi
- 0xffffffff81890a06 <+21>: mov %rdx,0x30(%rsp)
- 0xffffffff81890a0b <+26>: mov %rcx,0x38(%rsp)
- 0xffffffff81890a10 <+31>: mov %r8,0x40(%rsp)
- 0xffffffff81890a15 <+36>: mov %r9,0x48(%rsp)
- 0xffffffff81890a1a <+41>: mov %gs:0x28,%rax
- 0xffffffff81890a23 <+50>: mov %rax,0x18(%rsp)
- 0xffffffff81890a28 <+55>: xor %eax,%eax
- 0xffffffff81890a2a <+57>: lea 0x10(%rbp),%rax
- 0xffffffff81890a2e <+61>: movl $0x8,(%rsp)
- 0xffffffff81890a35 <+68>: mov %rax,0x8(%rsp)
- 0xffffffff81890a3a <+73>: lea 0x20(%rsp),%rax
- 0xffffffff81890a3f <+78>: mov %rax,0x10(%rsp)
- 0xffffffff81890a44 <+83>: call 0xffffffff810f1ca0 <vprintk_func>
- 0xffffffff81890a49 <+88>: mov 0x18(%rsp),%rdx
- 0xffffffff81890a4e <+93>: sub %gs:0x28,%rdx
- 0xffffffff81890a57 <+102>: je 0xffffffff81890a5e <printk+109>
- 0xffffffff81890a59 <+104>: call 0xffffffff818c4500 <__stack_chk_fail>
- 0xffffffff81890a5e <+109>: leave
- 0xffffffff81890a5f <+110>: ret
- End of assembler dump.
- (gdb) disassemble __fentry__
- Dump of assembler code for function __fentry__:
- 0xffffffff81062c40 <+0>: ret
- End of assembler dump.
- (gdb) disassemble __stack_chk_fail
- Dump of assembler code for function __stack_chk_fail:
- 0xffffffff818c4500 <+0>: mov (%rsp),%rsi
- 0xffffffff818c4504 <+4>: mov $0xffffffff820d24b8,%rdi
- 0xffffffff818c450b <+11>: call 0xffffffff8188b166 <panic>
- End of assembler dump.
- (gdb) disassemble vprintk_func
- Dump of assembler code for function vprintk_func:
- 0xffffffff810f1ca0 <+0>: call 0xffffffff81062c40 <__fentry__>
- 0xffffffff810f1ca5 <+5>: push %r12
- 0xffffffff810f1ca7 <+7>: mov %rsi,%r12
- 0xffffffff810f1caa <+10>: push %rbp
- 0xffffffff810f1cab <+11>: mov %rdi,%rbp
- 0xffffffff810f1cae <+14>: mov %gs:0x7ef28d6b(%rip),%eax # 0x1aa20 <printk_context>
- 0xffffffff810f1cb5 <+21>: test $0x8000000,%eax
- 0xffffffff810f1cba <+26>: jne 0xffffffff810f1d14 <vprintk_func+116>
- 0xffffffff810f1cbc <+28>: mov %gs:0x7ef28d5d(%rip),%eax # 0x1aa20 <printk_context>
- 0xffffffff810f1cc3 <+35>: movabs $0xff0000000,%rdx
- 0xffffffff810f1ccd <+45>: cltq
- 0xffffffff810f1ccf <+47>: mov $0x18a20,%rdi
- 0xffffffff810f1cd6 <+54>: test %rdx,%rax
- 0xffffffff810f1cd9 <+57>: jne 0xffffffff810f1cfe <vprintk_func+94>
- 0xffffffff810f1cdb <+59>: mov %gs:0x7ef28d3e(%rip),%eax # 0x1aa20 <printk_context>
- 0xffffffff810f1ce2 <+66>: test $0x7ffffff,%eax
- 0xffffffff810f1ce7 <+71>: jne 0xffffffff810f1cf7 <vprintk_func+87>
- 0xffffffff810f1ce9 <+73>: mov %r12,%rsi
- 0xffffffff810f1cec <+76>: mov %rbp,%rdi
- 0xffffffff810f1cef <+79>: pop %rbp
- 0xffffffff810f1cf0 <+80>: pop %r12
- 0xffffffff810f1cf2 <+82>: jmp 0xffffffff810f1210 <vprintk_default>
- 0xffffffff810f1cf7 <+87>: mov $0x1aa40,%rdi
- 0xffffffff810f1cfe <+94>: add %gs:0x7ef1f862(%rip),%rdi # 0x11568 <this_cpu_off>
- 0xffffffff810f1d06 <+102>: mov %r12,%rdx
- 0xffffffff810f1d09 <+105>: mov %rbp,%rsi
- 0xffffffff810f1d0c <+108>: pop %rbp
- 0xffffffff810f1d0d <+109>: pop %r12
- 0xffffffff810f1d0f <+111>: jmp 0xffffffff810f1990 <printk_safe_log_store>
- 0xffffffff810f1d14 <+116>: mov $0xffffffff82d05328,%rdi
- 0xffffffff810f1d1b <+123>: call 0xffffffff818d1c90 <_raw_spin_trylock>
- 0xffffffff810f1d20 <+128>: test %eax,%eax
- 0xffffffff810f1d22 <+130>: je 0xffffffff810f1cbc <vprintk_func+28>
- 0xffffffff810f1d24 <+132>: mov %r12,%r8
- 0xffffffff810f1d27 <+135>: xor %edi,%edi
- 0xffffffff810f1d29 <+137>: mov %rbp,%rcx
- 0xffffffff810f1d2c <+140>: xor %edx,%edx
- 0xffffffff810f1d2e <+142>: mov $0xffffffff,%esi
- 0xffffffff810f1d33 <+147>: call 0xffffffff810f0db0 <vprintk_store>
- 0xffffffff810f1d38 <+152>: mov $0xffffffff82d05328,%rdi
- 0xffffffff810f1d3f <+159>: mov %eax,%r12d
- 0xffffffff810f1d42 <+162>: call *0xffffffff8244b238
- 0xffffffff810f1d49 <+169>: call 0xffffffff810f1690 <defer_console_output>
- 0xffffffff810f1d4e <+174>: mov %r12d,%eax
- 0xffffffff810f1d51 <+177>: pop %rbp
- 0xffffffff810f1d52 <+178>: pop %r12
- 0xffffffff810f1d54 <+180>: ret
- End of assembler dump.
- (gdb)
Raw Paste