aboutsummaryrefslogtreecommitdiff
path: root/sys/fs/msdosfs/msdosfs_vfsops.c
diff options
context:
space:
mode:
authorBruce Evans <bde@FreeBSD.org>2007-08-03 23:13:50 +0000
committerBruce Evans <bde@FreeBSD.org>2007-08-03 23:13:50 +0000
commit3726942956a7df68bd3ddcd390d5eccad0f6a04c (patch)
treea13a38e659fa5a5329b63a56fbdf40ee2ff2ed3e /sys/fs/msdosfs/msdosfs_vfsops.c
parentdd9bccc4791eabcaa05b89abdeccaa3534ac2dbc (diff)
downloadsrc-3726942956a7df68bd3ddcd390d5eccad0f6a04c.tar.gz
src-3726942956a7df68bd3ddcd390d5eccad0f6a04c.zip
Oops, fix the fix for the i/o size of the fsinfo block. Its log
message explained why the size is 1 sector, but the code used a size of 1 cluster. I/o sizes larger than necessary may cause serious coherency problems in the buffer cache. Here I think there were only minor efficiency problems, since a too-large fsinfo buffer could only get far enough to overlap buffers for the same vnode (the device vnode), so mappings are coherent at the page level although not at the buffer level, and the former is probably enough due to our limited use of the fsinfo buffer. Approved by: re (kensmith)
Notes
Notes: svn path=/head/; revision=171711
Diffstat (limited to 'sys/fs/msdosfs/msdosfs_vfsops.c')
-rw-r--r--sys/fs/msdosfs/msdosfs_vfsops.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/fs/msdosfs/msdosfs_vfsops.c b/sys/fs/msdosfs/msdosfs_vfsops.c
index b495edb49835..d92188c57a33 100644
--- a/sys/fs/msdosfs/msdosfs_vfsops.c
+++ b/sys/fs/msdosfs/msdosfs_vfsops.c
@@ -654,7 +654,7 @@ mountmsdosfs(struct vnode *devvp, struct mount *mp, struct thread *td)
if (pmp->pm_fsinfo) {
struct fsinfo *fp;
- if ((error = bread(devvp, pmp->pm_fsinfo, pmp->pm_bpcluster,
+ if ((error = bread(devvp, pmp->pm_fsinfo, pmp->pm_BytesPerSec,
NOCRED, &bp)) != 0)
goto error_exit;
fp = (struct fsinfo *)bp->b_data;