summaryrefslogtreecommitdiffstats
path: root/sys/ufs/ffs
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2016-05-17 21:30:58 +0000
committerkib <kib@FreeBSD.org>2016-05-17 21:30:58 +0000
commit6c68797acfe0aea91e6566ed917636934e1a8c09 (patch)
tree965c3fc4b4a52430e931a1ddb047a25264823fa4 /sys/ufs/ffs
parentb27a7ca7b1efbab72e1813705c75539612dada30 (diff)
downloadFreeBSD-src-6c68797acfe0aea91e6566ed917636934e1a8c09.zip
FreeBSD-src-6c68797acfe0aea91e6566ed917636934e1a8c09.tar.gz
If IO_SYNC was passed to ffs_truncate(), request synchronous inode
update from the final ffs_update(). Noted by: bde MFC after: 1 week
Diffstat (limited to 'sys/ufs/ffs')
-rw-r--r--sys/ufs/ffs/ffs_inode.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/ufs/ffs/ffs_inode.c b/sys/ufs/ffs/ffs_inode.c
index 0202820..50b456b 100644
--- a/sys/ufs/ffs/ffs_inode.c
+++ b/sys/ufs/ffs/ffs_inode.c
@@ -610,7 +610,7 @@ extclean:
softdep_journal_freeblocks(ip, cred, length, IO_EXT);
else
softdep_setup_freeblocks(ip, length, IO_EXT);
- return (ffs_update(vp, !DOINGASYNC(vp)));
+ return (ffs_update(vp, (flags & IO_SYNC) != 0 || !DOINGASYNC(vp)));
}
/*
OpenPOWER on IntegriCloud