[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: back-bdb deadlocks



   Date: Fri, 18 Jan 2002 07:54:24 -0800
   From: "Kurt D. Zeilenga" <Kurt@OpenLDAP.org>
[...]
   >Must have something to do with thread scheduling
   >algorithms... With usermode threads you also need aio support, otherwise
   >any blocking I/O blocks all threads, making you effectively
   >single-threaded.

   Not when using FreeBSD pthreads...  the library properly transfers
   control to another thread if the I/O operation would block.
   (Of course, if the kernel blocks where it shouldn't then the
   process will block, but as far as I can tell.)

Unless FreeBSD pthreads use a non-standard Unix API, there's no way to
avoid blocking on disk i/o.  The standard user-mode thread packages
all block on disk i/o, as there's no portable way to avoid it.

Larry