From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: To: 9fans@9fans.net From: Lucio De Re Date: Thu, 18 Nov 2010 21:01:12 +0200 In-Reply-To: <51b322d6b85b82a50bdc787a90067330@coraid.com> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Subject: Re: [9fans] That deadlock, again Topicbox-Message-UUID: 8548fb84-ead6-11e9-9d60-3106f5b1d025 > /n/dump/2010/1118/sys/src/9/port/qlock.c:18,23 - port/qlock.c:18,25 > { > Proc *p; > > + if(up == nil && conf.postdawn) > + panic("qlock: %#p: postdawn up nil\n", getcallerpc(&q)); > if(m->ilockdepth != 0) > print("qlock: %#p: ilockdepth %d\n", getcallerpc(&q), m->ilockdepth); > if(up != nil && up->nlocks.ref) Yes, this is the type of explicit-ness I was thinking of. Note that you can now drop further tests for up == 0 later in the qlock() text. ++L