[PATCH 3/3] bcachefs: Don't lock ei_pagecache_lock in bch2_readahead
Alan Huang <[email protected]> Fri, 8 Aug 2025 21:43:12 +0800
| Newsgroups | org.kernel.vger.linux-bcachefs |
|---|---|
| Message-ID | <[email protected]> |
The lock should already be acquired from all code path. Signed-off-by: Alan Huang <[email protected]> --- fs/bcachefs/fs-io-buffered.c | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/fs/bcachefs/fs-io-buffered.c b/fs/bcachefs/fs-io-buffered.c index c16c45a72c47..01bc3e048542 100644 --- a/fs/bcachefs/fs-io-buffered.c +++ b/fs/bcachefs/fs-io-buffered.c @@ -70,15 +70,6 @@ static int readpages_iter_init(struct readpages_iter *iter, return 0; } -static void readpages_iter_exit(struct readpages_iter *iter, - struct readahead_control *ractl) -{ - darray_for_each_reverse(iter->folios, folio) { - readpages_iter_folio_revert(ractl, *folio); - folio_get(*folio); - } -} - static inline struct folio *readpage_iter_peek(struct readpages_iter *iter) { if (iter->idx >= iter->folios.nr) @@ -305,10 +296,6 @@ void bch2_readahead(struct readahead_control *ractl) * scheduling. */ blk_start_plug(&plug); - if (!bch2_pagecache_add_tryget(inode)) { - readpages_iter_exit(&readpages_iter, ractl); - goto out; - } struct btree_trans *trans = bch2_trans_get(c); while ((folio = readpage_iter_peek(&readpages_iter))) { @@ -334,8 +321,6 @@ void bch2_readahead(struct readahead_control *ractl) } bch2_trans_put(trans); - bch2_pagecache_add_put(inode); -out: blk_finish_plug(&plug); darray_exit(&readpages_iter.folios); } -- 2.49.0