From mboxrd@z Thu Jan 1 00:00:00 1970 From: erik quanstrom Date: Wed, 28 Oct 2009 12:14:03 -0400 To: 9fans@9fans.net Message-ID: <3ae7c28d4cfe448bca4196a2be472d10@coraid.com> In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Subject: Re: [9fans] double wakeup disallowed Topicbox-Message-UUID: 92e035c4-ead5-11e9-9d60-3106f5b1d025 > if a process p sleeps on r for condition f, and there are two wakeup(r), only > the first wakeup does anything because by the time of the second, > r doesn't refer to p any more. were you wanting r to retain memory of p so > the second wakeup would ... presumably still not do anything? (because > p wouldn't be in the right state.) if so, i don't see what you've gained. > i must be missing something. i agree with you. i'm the one who is missing something. the case i thought i was seeing — double wakeup leading to a panic — can't be happening. there's something else going on. thanks for the thoughtful responses to a dumb question. btw, isn't the lockstats.locks++ in taslock:/^lock broken since >1 loads can happen simultaneously leading to undercounting? - erik