cvs commit: src/sys/kern vfs_vnops.c src/sys/sys mount.h proc.h
src/sys/ufs/ffs ffs_extern.h ffs_snapshot.c ffs_vfsops.c
Konstantin Belousov
kib at FreeBSD.org
Tue Sep 16 11:51:32 UTC 2008
kib 2008-09-16 11:51:06 UTC
FreeBSD src repository
Modified files:
sys/kern vfs_vnops.c
sys/sys mount.h proc.h
sys/ufs/ffs ffs_extern.h ffs_snapshot.c ffs_vfsops.c
Log:
SVN rev 183073 on 2008-09-16 11:51:06Z by kib
When attempt is made to suspend a filesystem that is already syspended,
wait until the current suspension is lifted instead of silently returning
success immediately. The consequences of calling vfs_write() resume when
not owning the suspension are not well-defined at best.
Add the vfs_susp_clean() mount method to be called from
vfs_write_resume(). Set it to process_deferred_inactive() for ffs, and
stop calling it manually.
Add the thread flag TDP_IGNSUSP that allows to bypass the suspension
point in the vn_start_write. It is intended for use by VFS in the
situations where the suspender want to do some i/o requiring calls to
vn_start_write(), and this i/o cannot be done later.
Reviewed by: tegge
In collaboration with: pho
MFC after: 1 month
Revision Changes Path
1.265 +23 -12 src/sys/kern/vfs_vnops.c
1.233 +6 -0 src/sys/sys/mount.h
1.520 +1 -0 src/sys/sys/proc.h
1.77 +1 -0 src/sys/ufs/ffs/ffs_extern.h
1.145 +5 -2 src/sys/ufs/ffs/ffs_snapshot.c
1.349 +1 -0 src/sys/ufs/ffs/ffs_vfsops.c
More information about the cvs-src
mailing list