On Thu, Aug 2, 2018 at 1:25 PM, Conrad Meyer <c...@freebsd.org> wrote:

> Author: cem
> Date: Thu Aug  2 19:25:43 2018
> New Revision: 337165
> URL: https://svnweb.freebsd.org/changeset/base/337165
>
> Log:
>   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
>
> Modified:
>   head/sys/fs/fuse/fuse_vfsops.c
>
> Modified: head/sys/fs/fuse/fuse_vfsops.c
> ============================================================
> ==================
> --- head/sys/fs/fuse/fuse_vfsops.c      Thu Aug  2 19:19:53 2018
> (r337164)
> +++ head/sys/fs/fuse/fuse_vfsops.c      Thu Aug  2 19:25:43 2018
> (r337165)
> @@ -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;
>

Why DFLTPHYS instead of MAXPHYS?

DFLTPHYS defaults to 64k, while MAXPHYS is 128k. Or do you expect people
that want different behavior to raise both?

Warner
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to