From owner-cvs-all@FreeBSD.ORG Tue Dec 9 13:09:07 2003 Return-Path: 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 F34CF16A4CF; Tue, 9 Dec 2003 13:09:06 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E30F343D30; Tue, 9 Dec 2003 13:09:04 -0800 (PST) (envelope-from jhb@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hB9L94XJ028388; Tue, 9 Dec 2003 13:09:04 -0800 (PST) (envelope-from jhb@repoman.freebsd.org) Received: (from jhb@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hB9L94oZ028387; Tue, 9 Dec 2003 13:09:04 -0800 (PST) (envelope-from jhb) Message-Id: <200312092109.hB9L94oZ028387@repoman.freebsd.org> From: John Baldwin Date: Tue, 9 Dec 2003 13:09:04 -0800 (PST) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/kern subr_turnstile.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Dec 2003 21:09:07 -0000 jhb 2003/12/09 13:09:04 PST FreeBSD src repository Modified files: sys/kern subr_turnstile.c Log: Revert the previous race fix and replace it with a more general fix. The case of a turnstile having no threads is just one instance of the more general case where the thread we are examining has been partially awakened already in that it has been removed from the turnstile's blocked list but still has TDI_LOCK set. We detect that case by checking to see if the thread has already had a turnstile reassigned to it. Revision Changes Path 1.135 +9 -8 src/sys/kern/subr_turnstile.c