From owner-svn-src-head@FreeBSD.ORG Wed Feb 23 13:34:56 2011 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0DA751065672; Wed, 23 Feb 2011 13:34:56 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from cyrus.watson.org (cyrus.watson.org [65.122.17.42]) by mx1.freebsd.org (Postfix) with ESMTP id D486C8FC08; Wed, 23 Feb 2011 13:34:55 +0000 (UTC) Received: from bigwig.baldwin.cx (66.111.2.69.static.nyinternet.net [66.111.2.69]) by cyrus.watson.org (Postfix) with ESMTPSA id 8B4F746B0C; Wed, 23 Feb 2011 08:34:55 -0500 (EST) Received: from jhbbsd.localnet (unknown [209.249.190.10]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id A58BF8A009; Wed, 23 Feb 2011 08:34:54 -0500 (EST) From: John Baldwin To: Kostik Belousov Date: Wed, 23 Feb 2011 08:24:43 -0500 User-Agent: KMail/1.13.5 (FreeBSD/7.4-CBSD-20110107; KDE/4.4.5; amd64; ; ) References: <201102231256.p1NCuPHN056220@svn.freebsd.org> <20110223131228.GN78089@deviant.kiev.zoral.com.ua> In-Reply-To: <20110223131228.GN78089@deviant.kiev.zoral.com.ua> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Message-Id: <201102230824.43548.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.6 (bigwig.baldwin.cx); Wed, 23 Feb 2011 08:34:54 -0500 (EST) X-Virus-Scanned: clamav-milter 0.96.3 at bigwig.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=0.5 required=4.2 tests=BAYES_00,MAY_BE_FORGED, RDNS_DYNAMIC autolearn=no version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on bigwig.baldwin.cx Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r218967 - head/sys/kern X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Feb 2011 13:34:56 -0000 On Wednesday, February 23, 2011 8:12:28 am Kostik Belousov wrote: > On Wed, Feb 23, 2011 at 12:56:25PM +0000, John Baldwin wrote: > > Author: jhb > > Date: Wed Feb 23 12:56:25 2011 > > New Revision: 218967 > > URL: http://svn.freebsd.org/changeset/base/218967 > > > > Log: > > Fix off-by-one error in check against max_threads_per_proc. > > > > Submitted by: arundel > > MFC after: 1 week > > > > Modified: > > head/sys/kern/kern_thr.c > > > > Modified: head/sys/kern/kern_thr.c > > ============================================================================== > > --- head/sys/kern/kern_thr.c Wed Feb 23 10:28:37 2011 (r218966) > > +++ head/sys/kern/kern_thr.c Wed Feb 23 12:56:25 2011 (r218967) > > @@ -153,7 +153,7 @@ create_thread(struct thread *td, mcontex > > p = td->td_proc; > > > > /* Have race condition but it is cheap. */ > > - if (p->p_numthreads >= max_threads_per_proc) { > > + if (p->p_numthreads > max_threads_per_proc) { > > ++max_threads_hits; > > return (EPROCLIM); > > } > > I do not think there was off by one error. The create_thread() function > is called to create new thread, and before the process thread counter > is incremented in thread_link(). The old test tried to not allow more > then max_threads_per_proc threads in a process, now it allows to > create max_threads_per_proc. > > My guess is that the reference to mentioned pthread_vfork_test failed > because reporter set kern.threads.max_threads_per_proc to 100. The > test actually tries to create 101 threads, 1 main + 100 new. Ugh, pointy hat to me for jumping on this too quickly. I will revert. -- John Baldwin