Date: Tue, 15 Oct 2002 18:57:08 -0400 (EDT) From: Garrett Wollman <wollman@lcs.mit.edu> To: Craig Rodrigues <rodrigc@attbi.com> Cc: freebsd-current@FreeBSD.ORG Subject: Re: Bad system call: aio_read() Message-ID: <200210152257.g9FMv8rO007818@khavrinen.lcs.mit.edu> In-Reply-To: <20021012115723.A22674@attbi.com> References: <20021012095302.A22260@attbi.com> <20021012142400.GA26739@rz.uni-karlsruhe.de> <20021012164925.C424@aldebaran.dx> <20021012115723.A22674@attbi.com>
next in thread | previous in thread | raw e-mail | index | archive | help
<<On Sat, 12 Oct 2002 11:57:23 -0400, Craig Rodrigues <rodrigc@attbi.com> said: > I am trying to port the ACE library ( > http://www.cs.wustl.edu/~schmidt/ACE.html ) to FreeBSD-CURRENT, and > it is very confusing that code in -STABLE which compiled and worked, > does not work the same way in -CURRENT. (ie. the code compiles, but > it crashes because of a new kernel option not being enabled or a > module not being kldload'ed). The code is erroneous. In -current, _POSIX_ASYNCHRONOUS_IO is defined with value zero, which indicates that an application must call pathconf() or fpathconf() with key _PC_ASYNC_IO to determine whether AIO is supported for the path or file descriptor in question. If you call AIO functions without first checking whether they are available in the run-time environment, your computer is liable to turn into a frog. Other nasty things, such as abnormal program termination resulting from SIGSYS, may also happen. (If the code actually did this, it would find that FreeBSD's implementation of pathconf() is somewhat broken and always fails for this key. This is on my list of things to fix in my Copious Free Time, but if a Junior Kernel Hacker cared to do it for me I wouldn't mind at all.) -GAWollman 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?200210152257.g9FMv8rO007818>