summaryrefslogtreecommitdiffstats
path: root/fs/gfs2/lops.h
diff options
context:
space:
mode:
authorAbhi Das <adas@redhat.com>2019-05-02 14:17:40 -0500
committerAndreas Gruenbacher <agruenba@redhat.com>2019-05-07 23:39:15 +0200
commitf4686c26ecc34e8e458b8235f0af5198c9b13bfd (patch)
tree6768f35e9f263165a70e22b3f5d164e0b400e856 /fs/gfs2/lops.h
parentd0a22a4b03b8475b7aa3fa41243c26c291407844 (diff)
downloadlinux-f4686c26ecc34e8e458b8235f0af5198c9b13bfd.tar.gz
linux-f4686c26ecc34e8e458b8235f0af5198c9b13bfd.tar.bz2
linux-f4686c26ecc34e8e458b8235f0af5198c9b13bfd.zip
gfs2: read journal in large chunks
Use bios to read in the journal into the address space of the journal inode (jd_inode), sequentially and in large chunks. This is faster for locating the journal head that the previous binary search approach. When performing recovery, we keep the journal in the address space until recovery is done, which further speeds up things. Signed-off-by: Abhi Das <adas@redhat.com> Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
Diffstat (limited to 'fs/gfs2/lops.h')
-rw-r--r--fs/gfs2/lops.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/gfs2/lops.h b/fs/gfs2/lops.h
index 320fbf28d2fb..f195ffb435ac 100644
--- a/fs/gfs2/lops.h
+++ b/fs/gfs2/lops.h
@@ -25,8 +25,10 @@ extern u64 gfs2_log_bmap(struct gfs2_sbd *sdp);
extern void gfs2_log_write(struct gfs2_sbd *sdp, struct page *page,
unsigned size, unsigned offset, u64 blkno);
extern void gfs2_log_write_page(struct gfs2_sbd *sdp, struct page *page);
-extern void gfs2_log_submit_bio(struct bio **biop, int op, int op_flags);
+extern void gfs2_log_submit_bio(struct bio **biop, int opf);
extern void gfs2_pin(struct gfs2_sbd *sdp, struct buffer_head *bh);
+extern int gfs2_find_jhead(struct gfs2_jdesc *jd,
+ struct gfs2_log_header_host *head, bool keep_cache);
static inline unsigned int buf_limit(struct gfs2_sbd *sdp)
{