From owner-freebsd-hackers@FreeBSD.ORG Wed Jan 4 14:03:27 2006 Return-Path: X-Original-To: freebsd-hackers@freebsd.org Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AE05116A41F for ; Wed, 4 Jan 2006 14:03:27 +0000 (GMT) (envelope-from is@rambler-co.ru) Received: from yam.park.rambler.ru (yam.park.rambler.ru [81.19.64.116]) by mx1.FreeBSD.org (Postfix) with ESMTP id 035C943D5A for ; Wed, 4 Jan 2006 14:03:25 +0000 (GMT) (envelope-from is@rambler-co.ru) Received: from is.park.rambler.ru (is.park.rambler.ru [81.19.64.102]) by yam.park.rambler.ru (8.13.3/8.13.3) with ESMTP id k04E3N6M077261; Wed, 4 Jan 2006 17:03:23 +0300 (MSK) (envelope-from is@rambler-co.ru) Date: Wed, 4 Jan 2006 17:03:23 +0300 (MSK) From: Igor Sysoev X-X-Sender: is@is.park.rambler.ru To: John-Mark Gurney In-Reply-To: <20051214015939.GD55657@funkthat.com> Message-ID: <20060104165733.B2352@is.park.rambler.ru> References: <20051213193118.Q94136@logout.sh.cvut.cz> <20051214010711.F78686@logout.sh.cvut.cz> <20051214015939.GD55657@funkthat.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: freebsd-hackers@freebsd.org Subject: Re: kqueue/kevent and directories (Was: Equivalent of POLLERR for kqueue.) X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 04 Jan 2006 14:03:27 -0000 On Tue, 13 Dec 2005, John-Mark Gurney wrote: > Vaclav Haisman wrote this message on Wed, Dec 14, 2005 at 01:12 +0100: >> On Tue, 13 Dec 2005, Vaclav Haisman wrote: >> >>> Is there equivalent of POLLERR for kqueue()? Or is EV_EOF the only thing? >>> I would like to use kqueue/kevent for sockets but error condition >>> signaling is not clear to me from manpage. > > It's up to the driver, but I don't believe that kqueue normally delivers > errors back to the process... it returns as ready, but needs to be checked > manually via a call to the proper syscall... (at least for sockets).. Sorry for the late response, but kqueue delivers error code to process in fflags (at least for sockets), so application does not need to call unnecessary syscall to learn error code. Igor Sysoev http://sysoev.ru/en/