Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- jerome.poulin@casrvbackups2:~/debs-ext4/bcachefs$ gdb /usr/lib/debug/boot/vmlinux-6.16.0-rc2-bcachefs-11
- GNU gdb (Debian 16.3-1) 16.3
- Copyright (C) 2024 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 "aarch64-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 /usr/lib/debug/boot/vmlinux-6.16.0-rc2-bcachefs-11...
- (gdb) set pagination off
- (gdb) list *bch2_async_obj_list_read
- 0xffff800080727818 is in bch2_async_obj_list_read (fs/bcachefs/async_objs.c:63).
- 58 return 0;
- 59 }
- 60
- 61 static ssize_t bch2_async_obj_list_read(struct file *file, char __user *buf,
- 62 size_t size, loff_t *ppos)
- 63 {
- 64 struct dump_iter *i = file->private_data;
- 65 struct async_obj_list *list = i->list;
- 66 ssize_t ret = 0;
- 67
- (gdb) disassemble *bch2_async_obj_list_read
- Dump of assembler code for function bch2_async_obj_list_read:
- 0xffff800080727818 <+0>: nop
- 0xffff80008072781c <+4>: nop
- 0xffff800080727820 <+8>: paciasp
- 0xffff800080727824 <+12>: sub sp, sp, #0x50
- 0xffff800080727828 <+16>: mrs x3, sp_el0
- 0xffff80008072782c <+20>: stp x29, x30, [sp, #32]
- 0xffff800080727830 <+24>: add x29, sp, #0x20
- 0xffff800080727834 <+28>: stp x19, x20, [sp, #48]
- 0xffff800080727838 <+32>: stp x21, x22, [sp, #64]
- 0xffff80008072783c <+36>: ldr x20, [x0, #24]
- 0xffff800080727840 <+40>: ldr x4, [x3, #1456]
- 0xffff800080727844 <+44>: str x4, [sp, #24]
- 0xffff800080727848 <+48>: mov x4, #0x0 // #0
- 0xffff80008072784c <+52>: add x21, x20, #0x48
- 0xffff800080727850 <+56>: ldr x0, [x20, #64]
- 0xffff800080727854 <+60>: stp x1, x2, [x20, #112]
- 0xffff800080727858 <+64>: mov x2, #0x40 // #64
- 0xffff80008072785c <+68>: ldr x19, [x20, #8]
- 0xffff800080727860 <+72>: str xzr, [x20, #128]
- 0xffff800080727864 <+76>: str x0, [sp, #8]
- 0xffff800080727868 <+80>: lsl x0, x0, #3
- 0xffff80008072786c <+84>: mov x1, x19
- 0xffff800080727870 <+88>: str x0, [sp]
- 0xffff800080727874 <+92>: mov x0, sp
- 0xffff800080727878 <+96>: bl 0xffff8000808aeb20 <__genradix_iter_peek>
- 0xffff80008072787c <+100>: cbz x0, 0xffff8000807278b4 <bch2_async_obj_list_read+156>
- 0xffff800080727880 <+104>: ldr x22, [x0]
- 0xffff800080727884 <+108>: cbnz x22, 0xffff8000807278f0 <bch2_async_obj_list_read+216>
- 0xffff800080727888 <+112>: ldr x0, [sp]
- 0xffff80008072788c <+116>: adds x0, x0, #0x8
- 0xffff800080727890 <+120>: b.cs 0xffff800080727920 <bch2_async_obj_list_read+264> // b.hs, b.nlast
- 0xffff800080727894 <+124>: ldr x1, [sp, #8]
- 0xffff800080727898 <+128>: add x1, x1, #0x1
- 0xffff80008072789c <+132>: stp x0, x1, [sp]
- 0xffff8000807278a0 <+136>: mov x1, x19
- 0xffff8000807278a4 <+140>: mov x0, sp
- 0xffff8000807278a8 <+144>: mov x2, #0x40 // #64
- 0xffff8000807278ac <+148>: bl 0xffff8000808aeb20 <__genradix_iter_peek>
- 0xffff8000807278b0 <+152>: cbnz x0, 0xffff800080727880 <bch2_async_obj_list_read+104>
- 0xffff8000807278b4 <+156>: ldrb w1, [x20, #101]
- 0xffff8000807278b8 <+160>: mov x0, #0xfffffffffffffff4 // #-12
- 0xffff8000807278bc <+164>: tbz w1, #0, 0xffff800080727930 <bch2_async_obj_list_read+280>
- 0xffff8000807278c0 <+168>: mrs x1, sp_el0
- 0xffff8000807278c4 <+172>: ldr x3, [sp, #24]
- 0xffff8000807278c8 <+176>: ldr x2, [x1, #1456]
- 0xffff8000807278cc <+180>: subs x3, x3, x2
- 0xffff8000807278d0 <+184>: mov x2, #0x0 // #0
- 0xffff8000807278d4 <+188>: b.ne 0xffff80008072794c <bch2_async_obj_list_read+308> // b.any
- 0xffff8000807278d8 <+192>: ldp x29, x30, [sp, #32]
- 0xffff8000807278dc <+196>: ldp x19, x20, [sp, #48]
- 0xffff8000807278e0 <+200>: ldp x21, x22, [sp, #64]
- 0xffff8000807278e4 <+204>: add sp, sp, #0x50
- 0xffff8000807278e8 <+208>: autiasp
- 0xffff8000807278ec <+212>: ret
- 0xffff8000807278f0 <+216>: mov x0, x20
- 0xffff8000807278f4 <+220>: bl 0xffff800080657de8 <bch2_debugfs_flush_buf>
- 0xffff8000807278f8 <+224>: cbnz x0, 0xffff8000807278c0 <bch2_async_obj_list_read+168>
- 0xffff8000807278fc <+228>: ldr x0, [x20, #120]
- 0xffff800080727900 <+232>: cbz x0, 0xffff8000807278b4 <bch2_async_obj_list_read+156>
- 0xffff800080727904 <+236>: ldr x2, [x19, #32]
- 0xffff800080727908 <+240>: mov x0, x21
- 0xffff80008072790c <+244>: mov x1, x22
- 0xffff800080727910 <+248>: blr x2
- 0xffff800080727914 <+252>: ldr x0, [sp]
- 0xffff800080727918 <+256>: adds x0, x0, #0x8
- 0xffff80008072791c <+260>: b.cc 0xffff800080727894 <bch2_async_obj_list_read+124> // b.lo, b.ul, b.last
- 0xffff800080727920 <+264>: mov x1, #0xffffffffffffffff // #-1
- 0xffff800080727924 <+268>: mov x0, x1
- 0xffff800080727928 <+272>: stp x0, x1, [sp]
- 0xffff80008072792c <+276>: b 0xffff8000807278a0 <bch2_async_obj_list_read+136>
- 0xffff800080727930 <+280>: ldr x0, [sp, #8]
- 0xffff800080727934 <+284>: str x0, [x20, #64]
- 0xffff800080727938 <+288>: mov x0, x20
- 0xffff80008072793c <+292>: bl 0xffff800080657de8 <bch2_debugfs_flush_buf>
- 0xffff800080727940 <+296>: cbnz x0, 0xffff8000807278c0 <bch2_async_obj_list_read+168>
- 0xffff800080727944 <+300>: ldr x0, [x20, #128]
- 0xffff800080727948 <+304>: b 0xffff8000807278c0 <bch2_async_obj_list_read+168>
- 0xffff80008072794c <+308>: bl 0xffff800080ef5c80 <__stack_chk_fail>
- End of assembler dump.
- (gdb) quit
- jerome.poulin@casrvbackups2:~/debs-ext4/bcachefs$ uname -a
- Linux casrvbackups2.ad.cauca.ca 6.16.0-rc2-bcachefs-11 #33 SMP Mon Jun 16 11:50:21 EDT 2025 aarch64 GNU/Linux
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement