diff options
| author | 2025-05-29 16:25:29 +0100 | |
|---|---|---|
| committer | 2025-07-21 23:53:29 +0200 | |
| commit | 181436a85b16f9fa860d407ed37c726149fc3301 (patch) | |
| tree | 23195766af8d9797f3046835e409d4f95e722138 /fs/btrfs/tree-log.c | |
| parent | btrfs: use btrfs_del_item() at del_logged_dentry() (diff) | |
| download | linux-rng-181436a85b16f9fa860d407ed37c726149fc3301.tar.xz linux-rng-181436a85b16f9fa860d407ed37c726149fc3301.zip | |
btrfs: assert we join log transaction at btrfs_del_dir_entries_in_log()
We are supposed to be able to join a log transaction at that point, since
we have determined that the inode was logged in the current transaction
with the call to inode_logged(). So ASSERT() we joined a log transaction
and also warn if we didn't in case assertions are disabled (the kernel
config doesn't have CONFIG_BTRFS_ASSERT=y), so that the issue gets noticed
and reported if it ever happens.
Reviewed-by: Boris Burkov <boris@bur.io>
Signed-off-by: Filipe Manana <fdmanana@suse.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs/tree-log.c')
| -rw-r--r-- | fs/btrfs/tree-log.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c index cb20f124812a..58984ca2bfad 100644 --- a/fs/btrfs/tree-log.c +++ b/fs/btrfs/tree-log.c @@ -3473,7 +3473,8 @@ void btrfs_del_dir_entries_in_log(struct btrfs_trans_handle *trans, } ret = join_running_log_trans(root); - if (ret) + ASSERT(ret == 0, "join_running_log_trans() ret=%d", ret); + if (WARN_ON(ret)) return; mutex_lock(&dir->log_mutex); |
