summaryrefslogtreecommitdiffstats
path: root/sys/miscfs/fuse
diff options
context:
space:
mode:
authormpi <mpi@openbsd.org>2020-06-08 08:04:09 +0000
committermpi <mpi@openbsd.org>2020-06-08 08:04:09 +0000
commit6e29a9444098b33c28a7ce5b32b593b9539d7294 (patch)
tree7e312cdeb58db6aaa4acfb1748b3f0d5119637e5 /sys/miscfs/fuse
parentupdate drm to linux 5.7 (diff)
downloadwireguard-openbsd-6e29a9444098b33c28a7ce5b32b593b9539d7294.tar.xz
wireguard-openbsd-6e29a9444098b33c28a7ce5b32b593b9539d7294.zip
Use a new EV_OLDAPI flag to match the behavior of poll(2) and select(2).
Adapt FS kqfilters to always return true when the flag is set and bypass the polling mechanism of the NFS thread. While here implement a write filter for NFS. ok visa@
Diffstat (limited to 'sys/miscfs/fuse')
-rw-r--r--sys/miscfs/fuse/fuse_vnops.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/miscfs/fuse/fuse_vnops.c b/sys/miscfs/fuse/fuse_vnops.c
index 6438cecd1c9..ab443aa1078 100644
--- a/sys/miscfs/fuse/fuse_vnops.c
+++ b/sys/miscfs/fuse/fuse_vnops.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: fuse_vnops.c,v 1.59 2020/04/07 13:27:51 visa Exp $ */
+/* $OpenBSD: fuse_vnops.c,v 1.60 2020/06/08 08:04:09 mpi Exp $ */
/*
* Copyright (c) 2012-2013 Sylvestre Gallon <ccna.syl@gmail.com>
*
@@ -188,6 +188,9 @@ filt_fusefsread(struct knote *kn, long hint)
return (1);
}
+ if (kn->kn_flags & EV_OLDAPI)
+ return (1);
+
return (kn->kn_data != 0);
}