diff options
author | phk <phk@FreeBSD.org> | 2004-08-07 22:05:12 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 2004-08-07 22:05:12 +0000 |
commit | aa6ba3c9ddcb5736d75cd74d1a62b059acc810d2 (patch) | |
tree | 5781ce74dac6ca3ae85928223d1fd10b401b89c6 | |
parent | 54116ac22718c8b552a600672354ddd3934d2c18 (diff) | |
download | FreeBSD-src-aa6ba3c9ddcb5736d75cd74d1a62b059acc810d2.zip FreeBSD-src-aa6ba3c9ddcb5736d75cd74d1a62b059acc810d2.tar.gz |
Push all changes to disk before downgrading a mount from rw to ro.
-rw-r--r-- | sys/fs/msdosfs/msdosfs_vfsops.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/fs/msdosfs/msdosfs_vfsops.c b/sys/fs/msdosfs/msdosfs_vfsops.c index ccf4b7b..c71f2bf 100644 --- a/sys/fs/msdosfs/msdosfs_vfsops.c +++ b/sys/fs/msdosfs/msdosfs_vfsops.c @@ -186,6 +186,9 @@ msdosfs_omount(mp, path, data, td) pmp = VFSTOMSDOSFS(mp); error = 0; if (!(pmp->pm_flags & MSDOSFSMNT_RONLY) && (mp->mnt_flag & MNT_RDONLY)) { + error = VFS_SYNC(mp, MNT_WAIT, td->td_ucred, td); + if (error) + return (error); flags = WRITECLOSE; if (mp->mnt_flag & MNT_FORCE) flags |= FORCECLOSE; |