From: Byungchul Park <byungchul@sk.com>
To: Qu Wenruo <quwenruo.btrfs@gmx.com>
Cc: linux-kernel@vger.kernel.org, clm@fb.com, josef@toxicpanda.com,
dsterba@suse.com, linux-btrfs@vger.kernel.org,
kernel_team@skhynix.com, torvalds@linux-foundation.org,
akpm@linux-foundation.org, yeoreum.yun@arm.com,
yunseong.kim@ericsson.com, gwan-gyeong.mun@intel.com,
harry.yoo@oracle.com, ysk@kzalloc.com
Subject: Re: [RFC] DEPT report on around btrfs, unlink, and truncate
Date: Mon, 23 Jun 2025 17:19:19 +0900 [thread overview]
Message-ID: <20250623081919.GA53365@system.software.com> (raw)
In-Reply-To: <55c8b839-e844-49fe-bedc-948e60f681c7@gmx.com>
On Mon, Jun 23, 2025 at 03:20:43PM +0930, Qu Wenruo wrote:
> 在 2025/6/23 12:51, Byungchul Park 写道:
> > Hi folks,
> >
> > Thanks to Yunseong, we got two DEPT reports in btrfs. It doesn't mean
> > it's obvious deadlocks, but after digging into the reports, I'm
> > wondering if it could happen by any chance.
> >
> > 1) The first scenario that I'm concerning is:
> >
> > context A context B
> >
> > do_truncate()
> > ...
> > btrfs_do_readpage() // with folio lock held
>
> This one is for data.
Do you mean this folio is for data? Thanks for the confirmation.
> > do_unlinkat()
> > ...
> > push_leaf_right()
> > btrfs_tree_lock_nested()
> > down_write_nested(&eb->lock) // hold
This is struct extent_buffer's rw_sem. Right?
> > btrfs_get_extent()
> > btrfs_lookup_file_extent()
> > btrfs_search_slot()
> > down_read_nested(&eb->lock) // stuck
>
> This one is for metadata.
^
I don't get this actually.
This is struct extent_buffer's rw_sem, too. Cannot this rw_sem be the
same as the rw_sem above in context A?
> Data and metadata page cache will never cross into each other.
>
> Thanks,
> Qu
>
> > __push_leaf_right()
> > ...
> > folio_lock() // stuck
Did you mean this folio is always for metadata?
If no, it could lead a deadlock in my opinion. If yes, dept should
assign different classes to folios between data data and metadata.
Byungchul
> > 2) The second scenario that I'm concerning is:
> >
> > context A context B
> >
> > do_truncate()
> > ...
> > btrfs_do_readpage() // with folio lock held
> > do_unlinkat()
> > ...
> > btrfs_truncate_inode_items()
> > btrfs_lock_root_node()
> > down_write_nested(&eb->lock) // hold
> > btrfs_del_items()
> > push_leaf_right()
> > __push_leaf_right()
> > btrfs_get_extent()
> > btrfs_lookup_file_extent()
> > btrfs_search_slot()
> > btrfs_read_lock_root_node()
> > down_read_nested(&eb->lock) // stuck
> > ...
> > folio_lock() //stuck
> >
> > Am I missing something?
> >
> > FYI, the followings are the DEPT reports we got.
> >
> > Byungchul
> >
> > ---
> > [ 304.343395][ T7488] ===================================================
> > [ 304.343446][ T7488] DEPT: Circular dependency has been detected.
> > [ 304.343462][ T7488] 6.15.0-rc6-00043-ga83a69ec7f9f #5 Not tainted
> > [ 304.343477][ T7488] ---------------------------------------------------
> > [ 304.343488][ T7488] summary
> > [ 304.343498][ T7488] ---------------------------------------------------
> > [ 304.343509][ T7488] *** DEADLOCK ***
> > [ 304.343509][ T7488]
> > [ 304.343520][ T7488] context A
> > [ 304.343531][ T7488] [S] lock(btrfs-tree-00:0)
> > [ 304.343545][ T7488] [W] dept_page_wait_on_bit(pg_locked_map:0)
> > [ 304.343559][ T7488] [E] unlock(btrfs-tree-00:0)
> > [ 304.343572][ T7488]
> > [ 304.343581][ T7488] context B
> > [ 304.343591][ T7488] [S] (unknown)(pg_locked_map:0)
> > [ 304.343603][ T7488] [W] lock(btrfs-tree-00:0)
> > [ 304.343616][ T7488] [E] dept_page_clear_bit(pg_locked_map:0)
> > [ 304.343629][ T7488]
> > [ 304.343637][ T7488] [S]: start of the event context
> > [ 304.343647][ T7488] [W]: the wait blocked
> > [ 304.343656][ T7488] [E]: the event not reachable
> > [ 304.343666][ T7488] ---------------------------------------------------
> > [ 304.343676][ T7488] context A's detail
> > [ 304.343686][ T7488] ---------------------------------------------------
> > [ 304.343696][ T7488] context A
> > [ 304.343706][ T7488] [S] lock(btrfs-tree-00:0)
> > [ 304.343718][ T7488] [W] dept_page_wait_on_bit(pg_locked_map:0)
> > [ 304.343731][ T7488] [E] unlock(btrfs-tree-00:0)
> > [ 304.343744][ T7488]
> > [ 304.343753][ T7488] [S] lock(btrfs-tree-00:0):
> > [ 304.343764][ T7488] [<ffff8000824f41d8>] btrfs_tree_lock_nested+0x38/0x324
> > [ 304.343796][ T7488] stacktrace:
> > [ 304.343805][ T7488] down_write_nested+0xe4/0x21c
> > [ 304.343826][ T7488] btrfs_tree_lock_nested+0x38/0x324
> > [ 304.343865][ T7488] push_leaf_right+0x23c/0x628
> > [ 304.343896][ T7488] btrfs_del_items+0x974/0xaec
> > [ 304.343916][ T7488] btrfs_truncate_inode_items+0x1c5c/0x2b00
> > [ 304.343938][ T7488] btrfs_evict_inode+0xa4c/0xd38
> > [ 304.343968][ T7488] evict+0x340/0x7b0
> > [ 304.343993][ T7488] iput+0x4ec/0x840
> > [ 304.344011][ T7488] do_unlinkat+0x444/0x59c
> > [ 304.344038][ T7488] __arm64_sys_unlinkat+0x11c/0x260
> > [ 304.344057][ T7488] invoke_syscall+0x88/0x2e0
> > [ 304.344084][ T7488] el0_svc_common.constprop.0+0xe8/0x2e0
> > [ 304.344104][ T7488] do_el0_svc+0x44/0x60
> > [ 304.344123][ T7488] el0_svc+0x50/0x188
> > [ 304.344151][ T7488] el0t_64_sync_handler+0x10c/0x140
> > [ 304.344172][ T7488] el0t_64_sync+0x198/0x19c
> > [ 304.344189][ T7488]
> > [ 304.344198][ T7488] [W] dept_page_wait_on_bit(pg_locked_map:0):
> > [ 304.344211][ T7488] [<ffff8000823b1d20>] __push_leaf_right+0x8f0/0xc70
> > [ 304.344232][ T7488] stacktrace:
> > [ 304.344241][ T7488] __push_leaf_right+0x8f0/0xc70
> > [ 304.344260][ T7488] push_leaf_right+0x408/0x628
> > [ 304.344278][ T7488] btrfs_del_items+0x974/0xaec
> > [ 304.344297][ T7488] btrfs_truncate_inode_items+0x1c5c/0x2b00
> > [ 304.344314][ T7488] btrfs_evict_inode+0xa4c/0xd38
> > [ 304.344335][ T7488] evict+0x340/0x7b0
> > [ 304.344352][ T7488] iput+0x4ec/0x840
> > [ 304.344369][ T7488] do_unlinkat+0x444/0x59c
> > [ 304.344388][ T7488] __arm64_sys_unlinkat+0x11c/0x260
> > [ 304.344407][ T7488] invoke_syscall+0x88/0x2e0
> > [ 304.344425][ T7488] el0_svc_common.constprop.0+0xe8/0x2e0
> > [ 304.344445][ T7488] do_el0_svc+0x44/0x60
> > [ 304.344463][ T7488] el0_svc+0x50/0x188
> > [ 304.344482][ T7488] el0t_64_sync_handler+0x10c/0x140
> > [ 304.344503][ T7488] el0t_64_sync+0x198/0x19c
> > [ 304.344518][ T7488]
> > [ 304.344527][ T7488] [E] unlock(btrfs-tree-00:0):
> > [ 304.344539][ T7488] (N/A)
> > [ 304.344549][ T7488] ---------------------------------------------------
> > [ 304.344559][ T7488] context B's detail
> > [ 304.344568][ T7488] ---------------------------------------------------
> > [ 304.344578][ T7488] context B
> > [ 304.344588][ T7488] [S] (unknown)(pg_locked_map:0)
> > [ 304.344600][ T7488] [W] lock(btrfs-tree-00:0)
> > [ 304.344613][ T7488] [E] dept_page_clear_bit(pg_locked_map:0)
> > [ 304.344625][ T7488]
> > [ 304.344634][ T7488] [S] (unknown)(pg_locked_map:0):
> > [ 304.344646][ T7488] (N/A)
> > [ 304.344655][ T7488]
> > [ 304.344663][ T7488] [W] lock(btrfs-tree-00:0):
> > [ 304.344675][ T7488] [<ffff8000824f3b48>] btrfs_tree_read_lock_nested+0x38/0x330
> > [ 304.344694][ T7488] stacktrace:
> > [ 304.344703][ T7488] down_read_nested+0xc8/0x368
> > [ 304.344720][ T7488] btrfs_tree_read_lock_nested+0x38/0x330
> > [ 304.344737][ T7488] btrfs_search_slot+0x1204/0x2dc8
> > [ 304.344756][ T7488] btrfs_lookup_file_extent+0xe0/0x128
> > [ 304.344773][ T7488] btrfs_get_extent+0x2cc/0x1e24
> > [ 304.344789][ T7488] btrfs_do_readpage+0x628/0x1258
> > [ 304.344810][ T7488] btrfs_read_folio+0x310/0x450
> > [ 304.344828][ T7488] btrfs_truncate_block+0x2c0/0xb24
> > [ 304.344854][ T7488] btrfs_cont_expand+0x11c/0xba8
> > [ 304.344870][ T7488] btrfs_setattr+0x8d8/0x10f4
> > [ 304.344885][ T7488] notify_change+0x900/0xfbc
> > [ 304.344906][ T7488] do_truncate+0x154/0x210
> > [ 304.344937][ T7488] vfs_truncate+0x55c/0x66c
> > [ 304.344957][ T7488] __arm64_sys_truncate+0x16c/0x1e4
> > [ 304.344978][ T7488] invoke_syscall+0x88/0x2e0
> > [ 304.344997][ T7488] el0_svc_common.constprop.0+0xe8/0x2e0
> > [ 304.345017][ T7488]
> > [ 304.345025][ T7488] [E] dept_page_clear_bit(pg_locked_map:0):
> > [ 304.345037][ T7488] [<ffff80008249c284>] end_folio_read+0x3e4/0x590
> > [ 304.345056][ T7488] stacktrace:
> > [ 304.345065][ T7488] folio_unlock+0x8c/0x160
> > [ 304.345099][ T7488] end_folio_read+0x3e4/0x590
> > [ 304.345116][ T7488] btrfs_do_readpage+0x830/0x1258
> > [ 304.345132][ T7488] btrfs_read_folio+0x310/0x450
> > [ 304.345149][ T7488] btrfs_truncate_block+0x2c0/0xb24
> > [ 304.345164][ T7488] btrfs_cont_expand+0x11c/0xba8
> > [ 304.345179][ T7488] btrfs_setattr+0x8d8/0x10f4
> > [ 304.345194][ T7488] notify_change+0x900/0xfbc
> > [ 304.345213][ T7488] do_truncate+0x154/0x210
> > [ 304.345232][ T7488] vfs_truncate+0x55c/0x66c
> > [ 304.345252][ T7488] __arm64_sys_truncate+0x16c/0x1e4
> > [ 304.345272][ T7488] invoke_syscall+0x88/0x2e0
> > [ 304.345291][ T7488] el0_svc_common.constprop.0+0xe8/0x2e0
> > [ 304.345310][ T7488] do_el0_svc+0x44/0x60
> > [ 304.345328][ T7488] el0_svc+0x50/0x188
> > [ 304.345347][ T7488] el0t_64_sync_handler+0x10c/0x140
> > [ 304.345369][ T7488] ---------------------------------------------------
> > [ 304.345379][ T7488] information that might be helpful
> > [ 304.345388][ T7488] ---------------------------------------------------
> > [ 304.345402][ T7488] CPU: 1 UID: 0 PID: 7488 Comm: syz-executor Not tainted 6.15.0-rc6-00043-ga83a69ec7f9f #5 PREEMPT
> > [ 304.345416][ T7488] Hardware name: QEMU KVM Virtual Machine, BIOS 2025.02-8 05/13/2025
> > [ 304.345422][ T7488] Call trace:
> > [ 304.345426][ T7488] show_stack+0x34/0x80 (C)
> > [ 304.345452][ T7488] dump_stack_lvl+0x104/0x180
> > [ 304.345476][ T7488] dump_stack+0x20/0x2c
> > [ 304.345490][ T7488] cb_check_dl+0x1080/0x10ec
> > [ 304.345504][ T7488] bfs+0x4d8/0x630
> > [ 304.345514][ T7488] add_dep+0x1cc/0x364
> > [ 304.345526][ T7488] __dept_wait+0x60c/0x16e0
> > [ 304.345537][ T7488] dept_wait+0x168/0x1a8
> > [ 304.345548][ T7488] btrfs_clear_buffer_dirty+0x420/0x820
> > [ 304.345561][ T7488] __push_leaf_right+0x8f0/0xc70
> > [ 304.345575][ T7488] push_leaf_right+0x408/0x628
> > [ 304.345589][ T7488] btrfs_del_items+0x974/0xaec
> > [ 304.345603][ T7488] btrfs_truncate_inode_items+0x1c5c/0x2b00
> > [ 304.345616][ T7488] btrfs_evict_inode+0xa4c/0xd38
> > [ 304.345632][ T7488] evict+0x340/0x7b0
> > [ 304.345644][ T7488] iput+0x4ec/0x840
> > [ 304.345657][ T7488] do_unlinkat+0x444/0x59c
> > [ 304.345671][ T7488] __arm64_sys_unlinkat+0x11c/0x260
> > [ 304.345685][ T7488] invoke_syscall+0x88/0x2e0
> > [ 304.345698][ T7488] el0_svc_common.constprop.0+0xe8/0x2e0
> > [ 304.345713][ T7488] do_el0_svc+0x44/0x60
> > [ 304.345726][ T7488] el0_svc+0x50/0x188
> > [ 304.345741][ T7488] el0t_64_sync_handler+0x10c/0x140
> > [ 304.345756][ T7488] el0t_64_sync+0x198/0x19c
> > [ 304.345857][ T7488] ===================================================
> > [ 304.345995][ T7488] DEPT: Circular dependency has been detected.
> > [ 304.346006][ T7488] 6.15.0-rc6-00043-ga83a69ec7f9f #5 Not tainted
> > [ 304.346019][ T7488] ---------------------------------------------------
> > [ 304.346029][ T7488] summary
> > [ 304.346038][ T7488] ---------------------------------------------------
> > [ 304.346049][ T7488] *** DEADLOCK ***
> > [ 304.346049][ T7488]
> > [ 304.346058][ T7488] context A
> > [ 304.346069][ T7488] [S] lock(btrfs-tree-01:0)
> > [ 304.346082][ T7488] [W] dept_page_wait_on_bit(pg_locked_map:0)
> > [ 304.346095][ T7488] [E] unlock(btrfs-tree-01:0)
> > [ 304.346108][ T7488]
> > [ 304.346117][ T7488] context B
> > [ 304.346126][ T7488] [S] (unknown)(pg_locked_map:0)
> > [ 304.346139][ T7488] [W] lock(btrfs-tree-01:0)
> > [ 304.346151][ T7488] [E] dept_page_clear_bit(pg_locked_map:0)
> > [ 304.346164][ T7488]
> > [ 304.346173][ T7488] [S]: start of the event context
> > [ 304.346183][ T7488] [W]: the wait blocked
> > [ 304.346192][ T7488] [E]: the event not reachable
> > [ 304.346201][ T7488] ---------------------------------------------------
> > [ 304.346211][ T7488] context A's detail
> > [ 304.346221][ T7488] ---------------------------------------------------
> > [ 304.346231][ T7488] context A
> > [ 304.346240][ T7488] [S] lock(btrfs-tree-01:0)
> > [ 304.346253][ T7488] [W] dept_page_wait_on_bit(pg_locked_map:0)
> > [ 304.346266][ T7488] [E] unlock(btrfs-tree-01:0)
> > [ 304.346278][ T7488]
> > [ 304.346287][ T7488] [S] lock(btrfs-tree-01:0):
> > [ 304.346299][ T7488] [<ffff8000824f41d8>] btrfs_tree_lock_nested+0x38/0x324
> > [ 304.346321][ T7488] stacktrace:
> > [ 304.346330][ T7488] down_write_nested+0xe4/0x21c
> > [ 304.346347][ T7488] btrfs_tree_lock_nested+0x38/0x324
> > [ 304.346363][ T7488] btrfs_lock_root_node+0x70/0xac
> > [ 304.346379][ T7488] btrfs_search_slot+0x3f8/0x2dc8
> > [ 304.346399][ T7488] btrfs_truncate_inode_items+0x2ec/0x2b00
> > [ 304.346417][ T7488] btrfs_evict_inode+0xa4c/0xd38
> > [ 304.346438][ T7488] evict+0x340/0x7b0
> > [ 304.346456][ T7488] iput+0x4ec/0x840
> > [ 304.346473][ T7488] do_unlinkat+0x444/0x59c
> > [ 304.346492][ T7488] __arm64_sys_unlinkat+0x11c/0x260
> > [ 304.346511][ T7488] invoke_syscall+0x88/0x2e0
> > [ 304.346530][ T7488] el0_svc_common.constprop.0+0xe8/0x2e0
> > [ 304.346550][ T7488] do_el0_svc+0x44/0x60
> > [ 304.346568][ T7488] el0_svc+0x50/0x188
> > [ 304.346588][ T7488] el0t_64_sync_handler+0x10c/0x140
> > [ 304.346608][ T7488] el0t_64_sync+0x198/0x19c
> > [ 304.346623][ T7488]
> > [ 304.346632][ T7488] [W] dept_page_wait_on_bit(pg_locked_map:0):
> > [ 304.346644][ T7488] [<ffff8000823b1d20>] __push_leaf_right+0x8f0/0xc70
> > [ 304.346665][ T7488] stacktrace:
> > [ 304.346674][ T7488] __push_leaf_right+0x8f0/0xc70
> > [ 304.346692][ T7488] push_leaf_right+0x408/0x628
> > [ 304.346711][ T7488] btrfs_del_items+0x974/0xaec
> > [ 304.346729][ T7488] btrfs_truncate_inode_items+0x1c5c/0x2b00
> > [ 304.346747][ T7488] btrfs_evict_inode+0xa4c/0xd38
> > [ 304.346767][ T7488] evict+0x340/0x7b0
> > [ 304.346785][ T7488] iput+0x4ec/0x840
> > [ 304.346802][ T7488] do_unlinkat+0x444/0x59c
> > [ 304.346820][ T7488] __arm64_sys_unlinkat+0x11c/0x260
> > [ 304.346850][ T7488] invoke_syscall+0x88/0x2e0
> > [ 304.346871][ T7488] el0_svc_common.constprop.0+0xe8/0x2e0
> > [ 304.346891][ T7488] do_el0_svc+0x44/0x60
> > [ 304.346909][ T7488] el0_svc+0x50/0x188
> > [ 304.346928][ T7488] el0t_64_sync_handler+0x10c/0x140
> > [ 304.346949][ T7488] el0t_64_sync+0x198/0x19c
> > [ 304.346963][ T7488]
> > [ 304.346972][ T7488] [E] unlock(btrfs-tree-01:0):
> > [ 304.346984][ T7488] (N/A)
> > [ 304.346994][ T7488] ---------------------------------------------------
> > [ 304.347004][ T7488] context B's detail
> > [ 304.347013][ T7488] ---------------------------------------------------
> > [ 304.347023][ T7488] context B
> > [ 304.347033][ T7488] [S] (unknown)(pg_locked_map:0)
> > [ 304.347046][ T7488] [W] lock(btrfs-tree-01:0)
> > [ 304.347058][ T7488] [E] dept_page_clear_bit(pg_locked_map:0)
> > [ 304.347071][ T7488]
> > [ 304.347080][ T7488] [S] (unknown)(pg_locked_map:0):
> > [ 304.347092][ T7488] (N/A)
> > [ 304.347101][ T7488]
> > [ 304.347109][ T7488] [W] lock(btrfs-tree-01:0):
> > [ 304.347121][ T7488] [<ffff8000824f3b48>] btrfs_tree_read_lock_nested+0x38/0x330
> > [ 304.347140][ T7488] stacktrace:
> > [ 304.347149][ T7488] down_read_nested+0xc8/0x368
> > [ 304.347165][ T7488] btrfs_tree_read_lock_nested+0x38/0x330
> > [ 304.347181][ T7488] btrfs_read_lock_root_node+0x70/0xb4
> > [ 304.347198][ T7488] btrfs_search_slot+0x34c/0x2dc8
> > [ 304.347217][ T7488] btrfs_lookup_file_extent+0xe0/0x128
> > [ 304.347233][ T7488] btrfs_get_extent+0x2cc/0x1e24
> > [ 304.347248][ T7488] btrfs_do_readpage+0x628/0x1258
> > [ 304.347270][ T7488] btrfs_read_folio+0x310/0x450
> > [ 304.347287][ T7488] btrfs_truncate_block+0x2c0/0xb24
> > [ 304.347302][ T7488] btrfs_cont_expand+0x11c/0xba8
> > [ 304.347317][ T7488] btrfs_setattr+0x8d8/0x10f4
> > [ 304.347332][ T7488] notify_change+0x900/0xfbc
> > [ 304.347352][ T7488] do_truncate+0x154/0x210
> > [ 304.347374][ T7488] vfs_truncate+0x55c/0x66c
> > [ 304.347394][ T7488] __arm64_sys_truncate+0x16c/0x1e4
> > [ 304.347414][ T7488] invoke_syscall+0x88/0x2e0
> > [ 304.347433][ T7488]
> > [ 304.347441][ T7488] [E] dept_page_clear_bit(pg_locked_map:0):
> > [ 304.347453][ T7488] [<ffff80008249c284>] end_folio_read+0x3e4/0x590
> > [ 304.347471][ T7488] stacktrace:
> > [ 304.347480][ T7488] folio_unlock+0x8c/0x160
> > [ 304.347504][ T7488] end_folio_read+0x3e4/0x590
> > [ 304.347520][ T7488] btrfs_do_readpage+0x830/0x1258
> > [ 304.347536][ T7488] btrfs_read_folio+0x310/0x450
> > [ 304.347553][ T7488] btrfs_truncate_block+0x2c0/0xb24
> > [ 304.347568][ T7488] btrfs_cont_expand+0x11c/0xba8
> > [ 304.347583][ T7488] btrfs_setattr+0x8d8/0x10f4
> > [ 304.347598][ T7488] notify_change+0x900/0xfbc
> > [ 304.347617][ T7488] do_truncate+0x154/0x210
> > [ 304.347636][ T7488] vfs_truncate+0x55c/0x66c
> > [ 304.347656][ T7488] __arm64_sys_truncate+0x16c/0x1e4
> > [ 304.347676][ T7488] invoke_syscall+0x88/0x2e0
> > [ 304.347695][ T7488] el0_svc_common.constprop.0+0xe8/0x2e0
> > [ 304.347714][ T7488] do_el0_svc+0x44/0x60
> > [ 304.347732][ T7488] el0_svc+0x50/0x188
> > [ 304.347751][ T7488] el0t_64_sync_handler+0x10c/0x140
> > [ 304.347772][ T7488] ---------------------------------------------------
> > [ 304.347782][ T7488] information that might be helpful
> > [ 304.347791][ T7488] ---------------------------------------------------
> > [ 304.347803][ T7488] CPU: 1 UID: 0 PID: 7488 Comm: syz-executor Not tainted 6.15.0-rc6-00043-ga83a69ec7f9f #5 PREEMPT
> > [ 304.347815][ T7488] Hardware name: QEMU KVM Virtual Machine, BIOS 2025.02-8 05/13/2025
> > [ 304.347821][ T7488] Call trace:
> > [ 304.347825][ T7488] show_stack+0x34/0x80 (C)
> > [ 304.347852][ T7488] dump_stack_lvl+0x104/0x180
> > [ 304.347870][ T7488] dump_stack+0x20/0x2c
> > [ 304.347884][ T7488] cb_check_dl+0x1080/0x10ec
> > [ 304.347897][ T7488] bfs+0x4d8/0x630
> > [ 304.347906][ T7488] add_dep+0x1cc/0x364
> > [ 304.347917][ T7488] __dept_wait+0x60c/0x16e0
> > [ 304.347928][ T7488] dept_wait+0x168/0x1a8
> > [ 304.347940][ T7488] btrfs_clear_buffer_dirty+0x420/0x820
> > [ 304.347952][ T7488] __push_leaf_right+0x8f0/0xc70
> > [ 304.347967][ T7488] push_leaf_right+0x408/0x628
> > [ 304.347980][ T7488] btrfs_del_items+0x974/0xaec
> > [ 304.347994][ T7488] btrfs_truncate_inode_items+0x1c5c/0x2b00
> > [ 304.348007][ T7488] btrfs_evict_inode+0xa4c/0xd38
> > [ 304.348023][ T7488] evict+0x340/0x7b0
> > [ 304.348036][ T7488] iput+0x4ec/0x840
> > [ 304.348048][ T7488] do_unlinkat+0x444/0x59c
> > [ 304.348062][ T7488] __arm64_sys_unlinkat+0x11c/0x260
> > [ 304.348076][ T7488] invoke_syscall+0x88/0x2e0
> > [ 304.348090][ T7488] el0_svc_common.constprop.0+0xe8/0x2e0
> > [ 304.348105][ T7488] do_el0_svc+0x44/0x60
> > [ 304.348118][ T7488] el0_svc+0x50/0x188
> > [ 304.348132][ T7488] el0t_64_sync_handler+0x10c/0x140
> > [ 304.348148][ T7488] el0t_64_sync+0x198/0x19c
> > [ 304.386144][ T8054] BTRFS info (device loop0): first mount of filesystem 3a492a15-ac49-4ce6-945e-cef7a687c6c9
> > [ 304.389687][ T8054] BTRFS info (device loop0): using crc32c (crc32c-arm64) checksum algorithm
> > [ 304.389788][ T8054] BTRFS info (device loop0): using free-space-tree
> > [ 304.701202][ T7488] BTRFS info (device loop3): last unmount of filesystem 3a492a15-ac49-4ce6-945e-cef7a687c6c9
> >
next prev parent reply other threads:[~2025-06-23 8:19 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-23 3:21 [RFC] DEPT report on around btrfs, unlink, and truncate Byungchul Park
2025-06-23 5:50 ` Qu Wenruo
2025-06-23 8:19 ` Byungchul Park [this message]
2025-06-23 8:52 ` Qu Wenruo
2025-06-23 9:52 ` Byungchul Park
2025-06-23 9:58 ` Qu Wenruo
2025-06-24 1:44 ` Byungchul Park
2025-06-24 1:59 ` Byungchul Park
2025-06-24 3:07 ` Qu Wenruo
2025-06-23 12:22 ` Yunseong Kim
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250623081919.GA53365@system.software.com \
--to=byungchul@sk.com \
--cc=akpm@linux-foundation.org \
--cc=clm@fb.com \
--cc=dsterba@suse.com \
--cc=gwan-gyeong.mun@intel.com \
--cc=harry.yoo@oracle.com \
--cc=josef@toxicpanda.com \
--cc=kernel_team@skhynix.com \
--cc=linux-btrfs@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=quwenruo.btrfs@gmx.com \
--cc=torvalds@linux-foundation.org \
--cc=yeoreum.yun@arm.com \
--cc=ysk@kzalloc.com \
--cc=yunseong.kim@ericsson.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.