Date: Thu, 21 Feb 2019 02:41:58 +0000 (UTC) From: Conrad Meyer <cem@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344407 - head/sys/fs/fuse Message-ID: <201902210241.x1L2fwrk084129@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: cem Date: Thu Feb 21 02:41:57 2019 New Revision: 344407 URL: https://svnweb.freebsd.org/changeset/base/344407 Log: fuse: Fix a regression introduced in r337165 On systems with non-default DFLTPHYS and/or MAXBSIZE, FUSE would attempt to use a buf cache block size in excess of permitted size. This did not affect most configurations, since DFLTPHYS and MAXBSIZE both default to 64kB. The issue was discovered and reported using a custom kernel with a DFLTPHYS of 512kB. PR: 230260 (comment #9) Reported by: ken@ MFC after: π/𝑒 weeks Modified: head/sys/fs/fuse/fuse_vfsops.c Modified: head/sys/fs/fuse/fuse_vfsops.c ============================================================================== --- head/sys/fs/fuse/fuse_vfsops.c Thu Feb 21 02:37:01 2019 (r344406) +++ head/sys/fs/fuse/fuse_vfsops.c Thu Feb 21 02:41:57 2019 (r344407) @@ -338,7 +338,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 = DFLTPHYS; + mp->mnt_stat.f_iosize = MIN(DFLTPHYS, MAXBSIZE); if (subtype) { strlcat(mp->mnt_stat.f_fstypename, ".", MFSNAMELEN); strlcat(mp->mnt_stat.f_fstypename, subtype, MFSNAMELEN);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201902210241.x1L2fwrk084129>