Date: Tue, 15 Jul 2003 22:52:47 -0700 From: David Schultz <das@FreeBSD.ORG> To: David Xu <davidxu@FreeBSD.ORG> Cc: freebsd-threads@FreeBSD.ORG Subject: Threads regression tests (was: Re: ACE Proactor and libkse) Message-ID: <20030716055247.GA39968@HAL9000.homeunix.com> In-Reply-To: <002801c34b29$1a9831b0$0701a8c0@tiger> References: <20030715175141.GA99650@crodrigues.org> <002801c34b29$1a9831b0$0701a8c0@tiger>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Jul 16, 2003, David Xu wrote: > Can you test my libkse patch ? > http://people.freebsd.org/~davidxu/libpthread_bound.diffs > If you can test the patch to make sure I don't break signal > code, then I will commit this patch. Is there interest in incrementally building a threads-related regression test suite in src/tools/regression? This would mean less breakage for people who are trying to use KSE/libthr, and an easy way for threads developers to be somewhat confident that their changes are correct. For example, two weeks ago I was tearing my hair out over a sigwait() problem that caused the following program to deadlock. Since I already bothered to isolate the bug, why not do the last 1% of the work and check in a test so that it never comes back? Thoughts? #include <err.h> #include <signal.h> #include <stdlib.h> int main() { sigset_t mask; int sig; sigemptyset(&mask); sigaddset(&mask, SIGALRM); if (sigprocmask(SIG_BLOCK, &mask, NULL) < 0) err(1, "sigprocmask"); if (raise(SIGALRM) < 0) err(1, "raise"); if (sigwait(&mask, &sig) < 0) err(1, "sigwait"); return (0); }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030716055247.GA39968>