]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
gfs2: Convert gfs2_metapath_ra to bh_submit()
authorMatthew Wilcox (Oracle) <willy@infradead.org>
Thu, 28 May 2026 17:31:35 +0000 (18:31 +0100)
committerChristian Brauner <brauner@kernel.org>
Thu, 4 Jun 2026 08:28:09 +0000 (10:28 +0200)
Avoid an extra indirect function call by using bh_submit() instead
of submit_bh().  Also simplify the control flow now that the buffer
refcount is not put by bh_end_read().

Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Link: https://patch.msgid.link/20260528173150.1093780-23-willy@infradead.org
Reviewed-by: Jan Kara <jack@suse.cz>
Cc: gfs2@lists.linux.dev
Signed-off-by: Christian Brauner (Amutable) <brauner@kernel.org>
fs/gfs2/bmap.c

index b3d7fcd95f03ce112ad39533836c2c99eb4bdb41..d158c4b7413ddba1589a8f5e5ecebef482838fe5 100644 (file)
@@ -304,14 +304,15 @@ static void gfs2_metapath_ra(struct gfs2_glock *gl, __be64 *start, __be64 *end)
                rabh = gfs2_getbuf(gl, be64_to_cpu(*t), CREATE);
                if (trylock_buffer(rabh)) {
                        if (!buffer_uptodate(rabh)) {
-                               rabh->b_end_io = end_buffer_read_sync;
-                               submit_bh(REQ_OP_READ | REQ_RAHEAD | REQ_META |
-                                         REQ_PRIO, rabh);
-                               continue;
+                               bh_submit(rabh,
+                                       REQ_OP_READ | REQ_RAHEAD | REQ_META |
+                                       REQ_PRIO,
+                                       bh_end_read);
+                       } else {
+                               unlock_buffer(rabh);
                        }
-                       unlock_buffer(rabh);
                }
-               brelse(rabh);
+               put_bh(rabh);
        }
 }