Date: Mon, 13 Oct 2003 09:37:59 -0700 (PDT) From: John Polstra <jdp@polstra.com> To: John-Mark Gurney <jmg@freebsd.org> Cc: freebsd-bugs@freebsd.org Subject: Re: kern/45291: kevent(2) ignores timeout if nevents == 0 Message-ID: <XFMail.20031013093759.jdp@polstra.com> In-Reply-To: <200310130749.h9D7nWF9038579@freefall.freebsd.org>
index | next in thread | previous in thread | raw e-mail
On 13-Oct-2003 John-Mark Gurney wrote: > Synopsis: kevent(2) ignores timeout if nevents == 0 > > State-Changed-From-To: open->feedback > State-Changed-By: jmg > State-Changed-When: Mon Oct 13 00:46:53 PDT 2003 > State-Changed-Why: > to quote the man page: If timeout is a non-NULL pointer, it specifies > a maximum interval to wait for an event, > > The behavior is correct since you wanted to wait for 0 events, and since > it has delivered all the events it can (none), it returns. Unless provide > with good reason (or maybe a patch to the manpage to document this feature?) > I will close the PR in 5 days. I disagree. The current behavior is not correct. It is inconsistent with the longstanding behavior of both poll() and select(). Also, from a practical standpoint, returning immediately instead of waiting for the timeout to expire makes writing a typical event loop more awkward. It requires the addition of a special case in the application code to deal with the situation where no events are being awaited. That's not necessary when using poll() or select(). Johnhome | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.20031013093759.jdp>
