diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2019-10-05 03:40:47 +0300 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-10-23 00:08:28 +0300 |
commit | 63fbf458cb7d7df6b58f982df7496f79ee9e6863 (patch) | |
tree | 3745246903357f2a29751e4f28e68f4ff1d74fa0 /fs/bcachefs/dirent.c | |
parent | 0741d378216054145c9fd2c316924e1d403c8266 (diff) | |
download | linux-63fbf458cb7d7df6b58f982df7496f79ee9e6863.tar.xz |
bcachefs: Can't be holding read locks while taking write locks
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs/dirent.c')
-rw-r--r-- | fs/bcachefs/dirent.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/fs/bcachefs/dirent.c b/fs/bcachefs/dirent.c index 304128d7251f..2a3e830ebf50 100644 --- a/fs/bcachefs/dirent.c +++ b/fs/bcachefs/dirent.c @@ -296,10 +296,10 @@ int bch2_dirent_delete(struct bch_fs *c, u64 dir_inum, struct btree_iter * __bch2_dirent_lookup_trans(struct btree_trans *trans, u64 dir_inum, const struct bch_hash_info *hash_info, - const struct qstr *name) + const struct qstr *name, unsigned flags) { return bch2_hash_lookup(trans, bch2_dirent_hash_desc, - hash_info, dir_inum, name, 0); + hash_info, dir_inum, name, flags); } u64 bch2_dirent_lookup(struct bch_fs *c, u64 dir_inum, @@ -313,7 +313,8 @@ u64 bch2_dirent_lookup(struct bch_fs *c, u64 dir_inum, bch2_trans_init(&trans, c, 0, 0); - iter = __bch2_dirent_lookup_trans(&trans, dir_inum, hash_info, name); + iter = __bch2_dirent_lookup_trans(&trans, dir_inum, + hash_info, name, 0); if (IS_ERR(iter)) { BUG_ON(PTR_ERR(iter) == -EINTR); goto out; |