fs/ocfs2: use sleeping version of __find_get_block()
authorDavidlohr Bueso <dave@stgolabs.net>
Fri, 18 Apr 2025 01:59:18 +0000 (18:59 -0700)
committerChristian Brauner <brauner@kernel.org>
Tue, 22 Apr 2025 16:16:08 +0000 (18:16 +0200)
This is a path that allows for blocking as it does IO. Convert
to the new nonatomic flavor to benefit from potential performance
benefits and adapt in the future vs migration such that semantics
are kept.

Suggested-by: Jan Kara <jack@suse.cz>
Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Davidlohr Bueso <dave@stgolabs.net>
Link: https://kdevops.org/ext4/v6.15-rc2.html
Link: https://lore.kernel.org/all/aAAEvcrmREWa1SKF@bombadil.infradead.org/
Link: https://lore.kernel.org/20250418015921.132400-5-dave@stgolabs.net
Tested-by: kdevops@lists.linux.dev
Reviewed-by: Luis Chamberlain <mcgrof@kernel.org>
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/ocfs2/journal.c

index f1b4b3e611cb9bf4e7c8b44cc4a25be8df335f7f..c7a9729dc9d087816dcb52751c5d2b89159e3ba8 100644 (file)
@@ -1249,7 +1249,7 @@ static int ocfs2_force_read_journal(struct inode *inode)
                }
 
                for (i = 0; i < p_blocks; i++, p_blkno++) {
-                       bh = __find_get_block(osb->sb->s_bdev, p_blkno,
+                       bh = __find_get_block_nonatomic(osb->sb->s_bdev, p_blkno,
                                        osb->sb->s_blocksize);
                        /* block not cached. */
                        if (!bh)