diff options
author | Konstantin Belousov <kib@FreeBSD.org> | 2019-09-17 18:41:39 +0000 |
---|---|---|
committer | Konstantin Belousov <kib@FreeBSD.org> | 2019-09-17 18:41:39 +0000 |
commit | 6fd583583bdded9f34da7a41e976d64ce32f1c1f (patch) | |
tree | 5c2b8b554e80bc5770f840053bd31994e1fc955b /sbin/ifconfig | |
parent | 0edc114ac0b998b06235da32bec24d55c10206cd (diff) | |
download | src-6fd583583bdded9f34da7a41e976d64ce32f1c1f.tar.gz src-6fd583583bdded9f34da7a41e976d64ce32f1c1f.zip |
Further refine r352393, only call vnode_pager_setsize() outside the
node lock when shrinking.
This is similar to r252528, applied to the above commit.
Apparently there is a race which makes necessary at least to keep the
n_size and pager size consistent when extending. Current suspect is
that iod threads perform vnode_pager_setsize() without taking the
vnode lock, which corrupts the file content.
Reported and tested by: Masachika ISHIZUKA <ish@amail.plala.or.jp>
Discussed with: rmacklem (related issues)
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Notes
Notes:
svn path=/head/; revision=352457
Diffstat (limited to 'sbin/ifconfig')
0 files changed, 0 insertions, 0 deletions