Sync with FreeBSD/1.103. In the softupdates case for ffs_truncate() we
authorMatthew Dillon <dillon@dragonflybsd.org>
Tue, 8 Mar 2005 17:47:04 +0000 (17:47 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Tue, 8 Mar 2005 17:47:04 +0000 (17:47 +0000)
commit0e8fa33c936e68672d8993c8626e1db3cc18869b
tree9fdf9fd5c7aa8c4ea2e2ca47b4e2c12889e8dcc7
parent405d72738b987d1ee16e2fd3c50fdff94ec914c8
Sync with FreeBSD/1.103.   In the softupdates case for ffs_truncate() we
use vinvalbuf() to invalidate pending io and dependencies.  However,
vinvalbuf() rightfully does not call vnode_pager_setsize() for us.  We must
do this here.  This could potentially have caused numerous kinds of bugs,
but it was specifically causing msync() deadlocks because msync() was
writing out pages that should not have been valid.
sys/vfs/ufs/ffs_inode.c