Anton, back it out right away.
>From owner-source-changes+M181516=deraadt=cvs.openbsd....@openbsd.org Sun Oct
>20 23:43:01 2024
>Delivered-To: dera...@cvs.openbsd.org
>DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=selector1; bh=GMhdKwZ2pE
> NofvlurQX6BF2bUqjtBvklZlgQXTQ75kc=; h=list-unsubscribe:list-subscribe:
> list-post:list-owner:list-id:list-help:in-reply-to:references:subject:
> cc:to:from:date; d=openbsd.org; b=b+ra1d4gGP7sOjogrPsDnwGfAltH2nKTeuUK
> eTM47Y77ZypvKzuPfokG9yYGKiGVzehzTHYahglGOQNvCE2Hvn8l+81dPfeTUWrUh4MqAH
> /e8FMkAPAk1J2gVJ+2whVdFbnqn+s+p9nOUOugFCan9Znz2jRq60eDYg/VwVKvNkrewo9S
> Km4VqyAli/BtCksfgyWcceaKCLZmsISUdUUoS4XpD1vKlf9FkfbYjOyfPdm7X7w79PQxwP
> 8vluzuWz87d3i1V7CcXQ2hMo2izo1E7fJhyRvWxsdyKJBCEQwTzpHJNz8oMNI/5PmzkIqk
> Q9kBi2+2pY/COAYBLmJCsZx0wA==
>Date: Mon, 21 Oct 2024 07:42:54 +0200
>From: Anton Lindqvist <an...@basename.se>
>To: David Gwynne <d...@cvs.openbsd.org>
>Cc: source-chan...@cvs.openbsd.org
>Subject: Re: CVS: cvs.openbsd.org: src
>Mail-Followup-To: David Gwynne <d...@cvs.openbsd.org>,
> source-chan...@cvs.openbsd.org
>References: <f3c146e32f8db...@cvs.openbsd.org>
>MIME-Version: 1.0
>Content-Type: text/plain; charset=us-ascii
>Content-Disposition: inline
>In-Reply-To: <f3c146e32f8db...@cvs.openbsd.org>
>List-Help: <mailto:majord...@openbsd.org?body=help>
>List-ID: <source-changes.openbsd.org>
>List-Owner: <mailto:owner-source-chan...@openbsd.org>
>List-Post: <mailto:source-changes@openbsd.org>
>List-Subscribe: <mailto:majord...@openbsd.org?body=sub%20source-changes>
>List-Unsubscribe: <mailto:majord...@openbsd.org?body=unsub%20source-changes>
>X-Loop: source-changes@openbsd.org
>Precedence: list
>Sender: owner-source-chan...@openbsd.org
>
>On Sun, Oct 20, 2024 at 05:28:17AM -0600, David Gwynne wrote:
>> CVSROOT: /cvs
>> Module name: src
>> Changes by: d...@cvs.openbsd.org 2024/10/20 05:28:17
>>
>> Modified files:
>> sys/uvm : uvm_map.c uvm_map.h
>>
>> Log message:
>> try to simplify the locking code around busy maps.
>>
>> vm_maps have a "feature" where they can mark that they're being
>> operated on by a specific proc, and then release the rwlock protecting
>> their state. to relock, you have to be the same proc that marked
>> it busy.
>>
>> this diff tries to simplify it a bit. it basically has threads check
>> the busy field up front and rechecks the busy field inside the
>> rwlock. if you can sleep, it will sleep up front for the busy field
>> to become clear, rather than sleep on either the busy field or the
>> rwlock. some code paths clear the busy field without holding the
>> rwlock, so it doesn't make sense to me to be waiting for the busy
>> field but sleeping somewhere else.
>>
>> ok claudio@ mpi@
>
>This caused by amd64 regress machine to panic. It goes straight to
>reboot, no chance of capturing any output from ddb.
>
>Here's a reproducer which compiles some Go application:
>
> $ make -C $BSDSRC/regress/lib/libcrypto/c2sp
>
>My amd64 desktop machine also locks up while starting firefox.
>
>