freebsd-skq/sys/fs/msdosfs
Konstantin Belousov b2344ab5ff Do not call VFS_SYNC() before VFS_UNMOUNT() for forced unmount.
Since VFS does not/cannot stop writes, sync might run indefinitely, or
be a wrong thing to do at all.  E. g. NFS ignores VFS_SYNC() for
forced unmounts, since non-responding server does not allow sync to
finish.  On the other hand, filesystems can and do stop writes using
fs-specific facilities, and should already fully flush caches in
VFS_UNMOUNT() due to the race.

Adjust msdosfs tp sync in unmount for forced call, to accomodate the
new behaviour.  Note that it is still racy, since writes are not
stopped.

Discussed with:	avg, bjk, mckusick
Reported and tested by:	pho
Sponsored by:	The FreeBSD Foundation
MFC after:	3 weeks
2014-12-09 10:00:47 +00:00
..
bootsect.h
bpb.h
denode.h
direntry.h
fat.h
msdosfs_conv.c - Correct spelling in comments 2013-04-17 11:56:11 +00:00
msdosfs_denode.c Expand the use of stat(2) flags to allow storing some Windows/DOS 2013-08-21 23:04:48 +00:00
msdosfs_fat.c Do not update the fsinfo block on each update of any fat block, this 2013-02-17 20:35:54 +00:00
msdosfs_fileno.c msdosfs: minor format fix - spaces vs tab 2014-03-20 20:14:04 +00:00
msdosfs_iconv.c
msdosfs_lookup.c Generalize vn_get_ino() to allow filesystems to use custom vnode 2014-07-14 08:34:54 +00:00
msdosfs_vfsops.c Do not call VFS_SYNC() before VFS_UNMOUNT() for forced unmount. 2014-12-09 10:00:47 +00:00
msdosfs_vnops.c Do not set IN_ACCESS flag for read-only mounts. The IN_ACCESS 2014-10-11 19:09:56 +00:00
msdosfsmount.h Do not update the fsinfo block on each update of any fat block, this 2013-02-17 20:35:54 +00:00