From owner-cvs-src@FreeBSD.ORG Tue Jun 7 02:59:17 2005 Return-Path: X-Original-To: cvs-src@FreeBSD.org Delivered-To: cvs-src@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3F38216A41C; Tue, 7 Jun 2005 02:59:17 +0000 (GMT) (envelope-from jeff@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0748B43D53; Tue, 7 Jun 2005 02:59:17 +0000 (GMT) (envelope-from jeff@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j572xGS9046576; Tue, 7 Jun 2005 02:59:16 GMT (envelope-from jeff@repoman.freebsd.org) Received: (from jeff@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j572xGFn046575; Tue, 7 Jun 2005 02:59:16 GMT (envelope-from jeff) Message-Id: <200506070259.j572xGFn046575@repoman.freebsd.org> From: Jeff Roberson Date: Tue, 7 Jun 2005 02:59:16 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Cc: Subject: cvs commit: src/sys/kern sched_ule.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Jun 2005 02:59:17 -0000 jeff 2005-06-07 02:59:16 UTC FreeBSD src repository Modified files: sys/kern sched_ule.c Log: - Fix the case where we're not preempting but there is already a newtd as this happens via thread_switchout(). I don't particularly like the structure of the code here. We twice call out to thread code when a thread is voluntarily switching. Once to thread_switchout() and once to slot_fill(), while sched_4BSD does even more work which is redundant to select another thread to use our remaining slice. This should be simplified in the future, but for now I'm only going to fix the bug not the bad design. Revision Changes Path 1.152 +11 -3 src/sys/kern/sched_ule.c