From owner-cvs-all Tue Oct 1 7:41:49 2002 Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BF7B237B401; Tue, 1 Oct 2002 07:41:48 -0700 (PDT) Received: from mailman.zeta.org.au (mailman.zeta.org.au [203.26.10.16]) by mx1.FreeBSD.org (Postfix) with ESMTP id 769A143E42; Tue, 1 Oct 2002 07:41:47 -0700 (PDT) (envelope-from bde@zeta.org.au) Received: from bde.zeta.org.au (bde.zeta.org.au [203.2.228.102]) by mailman.zeta.org.au (8.9.3/8.8.7) with ESMTP id AAA08562; Wed, 2 Oct 2002 00:41:44 +1000 Date: Wed, 2 Oct 2002 00:51:12 +1000 (EST) From: Bruce Evans X-X-Sender: bde@gamplex.bde.org To: John Baldwin Cc: cvs-committers@FreeBSD.org, Subject: Re: cvs commit: src/sys/kern kern_synch.c In-Reply-To: <200210011410.g91EA9EZ026286@freefall.freebsd.org> Message-ID: <20021002004350.C1540-100000@gamplex.bde.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Tue, 1 Oct 2002, John Baldwin wrote: > jhb 2002/10/01 07:10:09 PDT > > Modified files: > sys/kern kern_synch.c > Log: > - Adjust comment noting that handling of CPU limit exhaustion is done in > ast(). > - Actually set KEF_ASTPENDING so ast() is called. I think this is buggy > for a process with multiple KSE's in that PS_XCPU is not a KSE event, > it's a process-wide event. IMO there really should probably be two > ASTPENDING flags, one for per-process, and one for per-KSE. > > Submitted by: bde I'm not sure who "I" is here :-). I think setting the flag for only one KSE is kludgy but not buggy. Killing the process from 1 thread is sufficient. If you killed it from several then you want to avoid warning and bumping the cpu limit for each kill (the actual kills would coalesce). One ASTPENDING flag process may already be one too many, since you have to remember to set it together with the flag(s) that tell ast() what to do, and having a summary flag like it doesn't significantly simplify the test for whether ast() should be called. Thanks for committing this and related patches. Bruce To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message