Date: Sun, 26 Nov 2000 13:00:03 -0800 (PST) From: "David Schwartz" <davids@webmaster.com> To: freebsd-bugs@FreeBSD.org Subject: Re: kern/21783: When msgrcv() blocks, it blocks ALL threads in multi-threaded application Message-ID: <200011262100.NAA66146@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/21783; it has been noted by GNATS. From: "David Schwartz" <davids@webmaster.com> To: <freebsd-gnats-submit@FreeBSD.org>, <wilco.oelen@cmg.nl> Cc: Subject: Re: kern/21783: When msgrcv() blocks, it blocks ALL threads in multi-threaded application Date: Sun, 26 Nov 2000 12:50:55 -0800 This is extremely unlikely to get fixed in FreeBSD3. For FreeBSD4, the best solution is for programs that need this functionality to compile/link with the LinuxThreads port (ports/devel/linuxthreads). The problem is that FreeBSD's POSIX threads library (libc_r) actually only has a single kernel execution vehicle. So anything that stalls that vehicle stalls all threads. If you need multiple kernel execution vehicles, you should be using a threads library that provides it. David Schwartz To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200011262100.NAA66146>