Date: Fri, 10 Jan 2003 11:55:22 -0800 From: Terry Lambert <tlambert2@mindspring.com> To: Nate Lawson <nate@root.org> Cc: Sam Leffler <sam@errno.com>, current@FreeBSD.ORG, re@FreeBSD.ORG Subject: Re: Serious issues with kqueue on sockets on CURRENT. Message-ID: <3E1F252A.FD4098C5@mindspring.com> References: <Pine.BSF.4.21.0301101036310.24355-100000@root.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Nate Lawson wrote: > On Fri, 10 Jan 2003, Sam Leffler wrote: > > What are "non-data characters"? > > A very zen question. :) In this case, It probably means bytes carried in > an mbuf with a type other than MT_DATA. Characters that won't come back from a read(2). The point of the EVFILT_READ character count is to provide a count of characters that could be retrieved via a subsequent read(2). So it seems that these include characters in mbufs of type MT_HE?ADER, if the data hung off ther is considered to be in the sockbuf. I still don't understand from the code if this is really a problem, or if it's just that there are a bunch of zero count EVFILT_READ events that end up popping back, along with non-zero-length ones. From my understanding of the complaint, it's that they are *all* zero length. The "child is waiting" seems to me to be indicating on which side of the pullup the event is sent (i.e. that the code was not changed to give correct results in the "already pending data" case), and that it can be fixed there, too. -- Terry To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3E1F252A.FD4098C5>