diff options
author | Konstantin Belousov <kib@FreeBSD.org> | 2013-07-17 10:56:21 +0000 |
---|---|---|
committer | Konstantin Belousov <kib@FreeBSD.org> | 2013-07-17 10:56:21 +0000 |
commit | a8b0523ae7f08fb25ed429cc0823b82fe53c4d9d (patch) | |
tree | 19c7e47a8fc3c60fa7691c45d31a5d9b4713234c | |
parent | e4f0cdc73f8db500ecf8d050b2d4d546de48250b (diff) |
Clear the vnode knotes before destroying vpollinfo.
Reported and tested by: Patrick Lamaiziere <patfbsd@davenulle.org>
Sponsored by: The FreeBSD Foundation
MFC after: 2 weeks
Notes
Notes:
svn path=/head/; revision=253417
-rw-r--r-- | sys/kern/vfs_subr.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index e64f379bdbdb..e2c28130d59b 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -3455,6 +3455,8 @@ vfs_msync(struct mount *mp, int flags) static void destroy_vpollinfo(struct vpollinfo *vi) { + + knlist_clear(&vi->vpi_selinfo.si_note, 1); seldrain(&vi->vpi_selinfo); knlist_destroy(&vi->vpi_selinfo.si_note); mtx_destroy(&vi->vpi_lock); |