From owner-p4-projects Sun Sep 8 18:45:27 2002 Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 81F1E37B401; Sun, 8 Sep 2002 18:45:22 -0700 (PDT) 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 275E737B400 for ; Sun, 8 Sep 2002 18:45:22 -0700 (PDT) Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id DB69543E42 for ; Sun, 8 Sep 2002 18:45:21 -0700 (PDT) (envelope-from mini@freebsd.org) Received: from freefall.freebsd.org (perforce@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.4/8.12.4) with ESMTP id g891jLJU059562 for ; Sun, 8 Sep 2002 18:45:21 -0700 (PDT) (envelope-from mini@freebsd.org) Received: (from perforce@localhost) by freefall.freebsd.org (8.12.4/8.12.4/Submit) id g891jLMJ059559 for perforce@freebsd.org; Sun, 8 Sep 2002 18:45:21 -0700 (PDT) Date: Sun, 8 Sep 2002 18:45:21 -0700 (PDT) Message-Id: <200209090145.g891jLMJ059559@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: perforce set sender to mini@freebsd.org using -f From: Jonathan Mini Subject: PERFORCE change 17249 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://people.freebsd.org/~peter/p4db/chv.cgi?CH=17249 Change 17249 by mini@mini_stylus on 2002/09/08 18:44:25 Thread-safe formatted printing. Affected files ... .. //depot/projects/kse/lib/libc_r/uthread/uthread_printf.c#1 add .. //depot/projects/kse/sys/kern/kern_proc.c#83 edit Differences ... ==== //depot/projects/kse/sys/kern/kern_proc.c#83 (text+ko) ==== @@ -293,6 +293,17 @@ int kse_yield(struct thread *td, struct kse_yield_args *uap) { + struct thread *td2; + + /* KSE-enabled processes only, please. */ + if ((td->td_proc->p_flag & P_KSES) == 0) + return (EINVAL); + + /* Don't discard the last thread. */ + td2 = FIRST_THREAD_IN_PROC(td->td_proc); + KASSERT(td2 != NULL, ("kse_yield: no threads in our proc")); + if (TAILQ_NEXT(td, td_plist) == NULL) + return (EINVAL); /* Abandon thread. */ PROC_LOCK(td->td_proc); To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe p4-projects" in the body of the message