From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 21409 invoked from network); 22 Jun 2022 15:25:07 -0000 Received: from 9front.inri.net (168.235.81.73) by inbox.vuxu.org with ESMTPUTF8; 22 Jun 2022 15:25:07 -0000 Received: from duke.felloff.net ([216.126.196.34]) by 9front; Wed Jun 22 11:22:57 -0400 2022 Message-ID: <388F566ADE20BEF9E93A334BCFEA644D@felloff.net> Date: Wed, 22 Jun 2022 17:22:48 +0200 From: cinap_lenrek@felloff.net To: 9front@9front.org In-Reply-To: <27178dc6-eefd-7b5a-c243-467331d31e10@posixcafe.org> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: base-based software Subject: Re: [9front] [PATCH] private /srv attach option Reply-To: 9front@9front.org Precedence: bulk small bugs. readstr() can error, so you need to put a waserror() to do the runlock(b). i'm a bit confused about the boardclunk(). as i see it, the original Board *b would never be unlocked if the loop condition was true. as the loop at the bottom changes b to the parent. then the final wunlock() at the bottom would unlock the wrong thing? also, the lock order seems strange. we'r here locking from the bottom up to the root. as long as we always lock from the bottom to up, we'r fine, but if we have any case where we acquired parent lock, and then try to aquire a child lock we have a lock order violation that can lead to deadlock. sorry, didnt have time before to code review. -- cinap