This should be impossible to hit in practice; the first lookup within a
transaction won't return a restart due to lock ordering, but we're
adding fault injection for transaction restarts and shaking out bugs.

Signed-off-by: Kent Overstreet <[email protected]>
---
 fs/bcachefs/fs.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/bcachefs/fs.c b/fs/bcachefs/fs.c
index 857175f4bbbe..d5d16d12e03a 100644
--- a/fs/bcachefs/fs.c
+++ b/fs/bcachefs/fs.c
@@ -871,7 +871,7 @@ static int bch2_rename2(struct mnt_idmap *idmap,
        ret   = bch2_subvol_is_ro_trans(trans, src_dir->ei_inum.subvol) ?:
                bch2_subvol_is_ro_trans(trans, dst_dir->ei_inum.subvol);
        if (ret)
-               goto err;
+               goto err_tx_restart;
 
        if (inode_attr_changing(dst_dir, src_inode, Inode_opt_project)) {
                ret = bch2_fs_quota_transfer(c, src_inode,
-- 
2.45.2


Reply via email to