From owner-freebsd-hackers@FreeBSD.ORG Wed Jan 18 15:15:42 2006 Return-Path: X-Original-To: freebsd-hackers@freebsd.org Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2306316A41F for ; Wed, 18 Jan 2006 15:15:42 +0000 (GMT) (envelope-from asmrookie@gmail.com) Received: from zproxy.gmail.com (zproxy.gmail.com [64.233.162.202]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4B7A643D48 for ; Wed, 18 Jan 2006 15:15:41 +0000 (GMT) (envelope-from asmrookie@gmail.com) Received: by zproxy.gmail.com with SMTP id 9so1644600nzo for ; Wed, 18 Jan 2006 07:15:40 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:reply-to:to:subject:cc:in-reply-to:mime-version:content-type:references; b=M+A2M8IFMA9MwHivb1dK1aBUB2YXPGSWngMTJHxueI6L/zQkOIaSOrSb9NzfesOuT9U95mGxZKNCuYeoM/eURzMh5Dnk26t70zD/Tfmk7evC+Z2/3sayiyuSumqyD46LINHVst/EknHN9aK2MakFzVXDrzc7xPNHWYo1oTzaXwU= Received: by 10.37.14.38 with SMTP id r38mr6672217nzi; Wed, 18 Jan 2006 07:15:40 -0800 (PST) Received: by 10.36.43.4 with HTTP; Wed, 18 Jan 2006 07:15:40 -0800 (PST) Message-ID: <3bbf2fe10601180715k25297666y@mail.gmail.com> Date: Wed, 18 Jan 2006 16:15:40 +0100 From: rookie To: Daniel Eischen In-Reply-To: MIME-Version: 1.0 References: <3bbf2fe10601180138m3a5ab67cx@mail.gmail.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: freebsd-hackers@freebsd.org Subject: Re: How priority propagation works on read/write lock? X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: rookie@gufi.org List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Jan 2006 15:15:42 -0000 2006/1/18, Daniel Eischen : >You will eventually do priority propagation for all of them > (A, B, and C) until G's priority is <=3D the priority of RW1. > It doesn't matter if you do one at a time or all of them > at once. They all (A, B, C) have to release RW1 before > G can run You don't point out the problem. Here the problem is propagating priority to D, {E1, E2, E3} and F. If it doesn't happen the whole system will starve. Cheers, Attilio -- Peace can only be achieved by understanding - A. Einstein