aboutsummaryrefslogtreecommitdiff
path: root/sys/netinet/toecore.h
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2019-11-29 14:02:32 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2019-11-29 14:02:32 +0000
commitfdc6b10d44c201f6ed52c1f323b2b4ca2eb64662 (patch)
tree80e4edb52cb5e8abe1b3f799e6eda5f292c3f5e6 /sys/netinet/toecore.h
parent9698d992306dee298e1f130fcf437a0ce9add73e (diff)
downloadsrc-fdc6b10d44c201f6ed52c1f323b2b4ca2eb64662.tar.gz
src-fdc6b10d44c201f6ed52c1f323b2b4ca2eb64662.zip
Add a VN_OPEN_INVFS flag.
vn_open_cred() assumes that it is called from the top-level of a VFS syscall. Writers must call bwillwrite() before locking any VFS resource to wait for cleanup of dirty buffers. ZFS getextattr() and setextattr() VOPs do call vn_open_cred(), which results in wait for unrelated buffers while owning ZFS vnode lock (and ZFS does not use buffer cache). VN_OPEN_INVFS allows caller to skip bwillwrite. Note that ZFS is still incorrect there, because it starts write on an mp and locks a vnode while holding another vnode lock. Reported by: Willem Jan Withagen <wjw@digiware.nl> Sponsored by: The FreeBSD Foundation MFC after: 1 week
Notes
Notes: svn path=/head/; revision=355211
Diffstat (limited to 'sys/netinet/toecore.h')
0 files changed, 0 insertions, 0 deletions