Date: Thu, 08 Mar 2001 18:17:22 -0800 From: Ben Jackson <ben@ben.com> To: freebsd-ports@freebsd.org Subject: another scary bug in linuxthreads port Message-ID: <200103090217.f292HMj18543@saturn.home.ben.com>
next in thread | raw e-mail | index | archive | help
When my program died because it thought select() returned ECHILD (due to racing with a wait4()) I discovered to my horror that the linuxthreads port doesn't define an __error() that returns a pointer to the per-thread errno. If you rename __errno_location() to __error and ensure that the initial thread starts out with a valid p_errnop (I did this by using its internal p_errno in the static initializer rather than trying to ensure that some global `errno' was used for the main thread) it works. Whew. I fear to know what the next thread-safe hook linuxthreads is not quite managing to override is... --Ben To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200103090217.f292HMj18543>