From owner-p4-projects Tue Mar 11 8:16:30 2003 Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C31F637B404; Tue, 11 Mar 2003 08:16:28 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 57EB337B401 for ; Tue, 11 Mar 2003 08:16:28 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0810E43FA3 for ; Tue, 11 Mar 2003 08:16:28 -0800 (PST) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h2BGGR0U049563 for ; Tue, 11 Mar 2003 08:16:27 -0800 (PST) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h2BGGRDK049560 for perforce@freebsd.org; Tue, 11 Mar 2003 08:16:27 -0800 (PST) Date: Tue, 11 Mar 2003 08:16:27 -0800 (PST) Message-Id: <200303111616.h2BGGRDK049560@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin Subject: PERFORCE change 26682 for review To: Perforce Change Reviews Sender: owner-p4-projects@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG http://perforce.freebsd.org/chv.cgi?CH=26682 Change 26682 by jhb@jhb_laptop on 2003/03/11 08:16:10 Post the thread death events properly as a broadcast event. Affected files ... .. //depot/projects/smpng/sys/modules/evtest/evtest.c#9 edit Differences ... ==== //depot/projects/smpng/sys/modules/evtest/evtest.c#9 (text+ko) ==== @@ -334,12 +334,18 @@ static void thread_destroy(int i) { + int j; if (i < 0 || i >= NUM_THREADS || threads[i].ti_p == NULL) return; mtx_assert(&event_mtx, MA_OWNED); printf("%s: killing thread %d\n", __func__, i); threads[i].ti_event = -1; + broadcast_count = 0; + for (j = 0; j < NUM_THREADS; j++) + if (threads[j].ti_p != NULL) + broadcast_count++; + event = -1; cv_broadcast(&event_cv); msleep(threads[i].ti_p, &event_mtx, PWAIT, "evtstun", 0); threads[i].ti_p = NULL; To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe p4-projects" in the body of the message