FUSE: Bump maximum IO size to enable more performant operation
Various components restrict size of IO passed up to the userspace filesystem based on the mount's f_iosize value. The previous default of PAGE_SIZE is anemic, even for normal filesystems, but especially considering every FUSE operation involves a kernel <-> userspace IPC upcall. Bump to DFLTPHYS (currently 64kB) to match other FUSE implementations. Anecdotally, Jakub reports IO read performance increased from 600 MB/s -> 2700 MB/s with a basic RAM-backed FUSE filesystem. PR: 230260 Reported by: Peter (MooseFS) <freebsd AT moosefs.com> Tested by: Jakub Kruszona-Zawadzki <acid AT moosefs.com> MFC after: 3 days
This commit is contained in:
parent
c423a5e6b8
commit
dab6195cd3
@ -341,7 +341,7 @@ fuse_vfsop_mount(struct mount *mp)
|
||||
mp->mnt_kern_flag |= MNTK_USES_BCACHE;
|
||||
MNT_IUNLOCK(mp);
|
||||
/* We need this here as this slot is used by getnewvnode() */
|
||||
mp->mnt_stat.f_iosize = PAGE_SIZE;
|
||||
mp->mnt_stat.f_iosize = DFLTPHYS;
|
||||
if (subtype) {
|
||||
strlcat(mp->mnt_stat.f_fstypename, ".", MFSNAMELEN);
|
||||
strlcat(mp->mnt_stat.f_fstypename, subtype, MFSNAMELEN);
|
||||
|
Loading…
Reference in New Issue
Block a user