From owner-freebsd-threads@FreeBSD.ORG Tue Jul 15 22:53:02 2003 Return-Path: Delivered-To: freebsd-threads@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A7BE137B401; Tue, 15 Jul 2003 22:53:02 -0700 (PDT) Received: from HAL9000.homeunix.com (ip114.bella-vista.sfo.interquest.net [66.199.86.114]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7715243F85; Tue, 15 Jul 2003 22:53:01 -0700 (PDT) (envelope-from das@FreeBSD.ORG) Received: from HAL9000.homeunix.com (localhost [127.0.0.1]) by HAL9000.homeunix.com (8.12.9/8.12.9) with ESMTP id h6G5qlLv040052; Tue, 15 Jul 2003 22:52:47 -0700 (PDT) (envelope-from das@FreeBSD.ORG) Received: (from das@localhost) by HAL9000.homeunix.com (8.12.9/8.12.9/Submit) id h6G5qlmF040051; Tue, 15 Jul 2003 22:52:47 -0700 (PDT) (envelope-from das@FreeBSD.ORG) Date: Tue, 15 Jul 2003 22:52:47 -0700 From: David Schultz To: David Xu Message-ID: <20030716055247.GA39968@HAL9000.homeunix.com> Mail-Followup-To: David Xu , Craig Rodrigues , freebsd-threads@freebsd.org References: <20030715175141.GA99650@crodrigues.org> <002801c34b29$1a9831b0$0701a8c0@tiger> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <002801c34b29$1a9831b0$0701a8c0@tiger> cc: Craig Rodrigues cc: freebsd-threads@FreeBSD.ORG Subject: Threads regression tests (was: Re: ACE Proactor and libkse) X-BeenThere: freebsd-threads@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Threading on FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 Jul 2003 05:53:03 -0000 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 #include #include 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); }