Date: Fri, 16 Feb 2018 06:14:14 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-bugs@FreeBSD.org Subject: [Bug 203366] kevent: EV_CLEAR on fifo does not work correctly Message-ID: <bug-203366-8-5nS9GbzqKq@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-203366-8@https.bugs.freebsd.org/bugzilla/> References: <bug-203366-8@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D203366 --- Comment #10 from Jan Kokem=C3=BCller <jan.kokemueller@gmail.com> --- So the EV_EOF flag is 'sticky' in kn_flags and does not get cleared anywher= e, right? Then I was wrong in comment #7. There is also bug #224615 for an interesting edgecase at FIFO EOF where kev= ent and poll differ. I also wonder why the man page speaks of using EV_CLEAR to clear the EV_EOF condition. What about level triggered kevent() without EV_CLEAR? See also this commit from DragonFly[1]. They had the same problem. They sti= ll use the filt_fiforead filter in 'sys/vfs/fifofs/fifo_vnops.c', though. I'll try to write a test program that reproduces all those EOF related issu= es. [1]: http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/acb71b22f1443bd8a34= f6e457cf57c4527d7ab52 --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-203366-8-5nS9GbzqKq>