[PATCH] 9p: set readahead and io size according to maxsize

From: Dominique Martinet
Date: Thu Nov 04 2021 - 08:04:00 EST


having a readahead of 128k with a msize of 128k (with overhead) lead to
reading 124+4k everytime, making two roundtrips needlessly.

tune readahead according to msize when cache is enabled for better
performance

Signed-off-by: Dominique Martinet <asmadeus@xxxxxxxxxxxxx>
---
fs/9p/vfs_super.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/fs/9p/vfs_super.c b/fs/9p/vfs_super.c
index c6028af51925..b0632f4e337f 100644
--- a/fs/9p/vfs_super.c
+++ b/fs/9p/vfs_super.c
@@ -79,6 +79,9 @@ v9fs_fill_super(struct super_block *sb, struct v9fs_session_info *v9ses,
if (!v9ses->cache) {
sb->s_bdi->ra_pages = 0;
sb->s_bdi->io_pages = 0;
+ } else {
+ sb->s_bdi->ra_pages = v9ses->maxdata >> PAGE_SHIFT;
+ sb->s_bdi->io_pages = v9ses->maxdata >> PAGE_SHIFT;
}

sb->s_flags |= SB_ACTIVE | SB_DIRSYNC;
--
2.31.1