Re: git: ada1f577cc29 - main - bhyve/riscv: correctly handle empty masks and broadcast in SBI IPI/RFNC

From: Jessica Clarke <jrtc27_at_freebsd.org>
Date: Mon, 02 Nov 2026 21:44:53 UTC
On 2 Nov 2026, at 21:33, Ruslan Bukin <br@freebsd.org> wrote:
> On Mon Nov 2, 2026 at 9:10 PM UTC, Jessica Clarke wrote:
>> On 2 Nov 2026, at 21:07, Ruslan Bukin <br@FreeBSD.org> wrote:
>>> 
>>> The branch main has been updated by br:
>>> 
>>> URL: https://cgit.FreeBSD.org/src/commit/?id=ada1f577cc291336cbb69782075dbbf9fe746872
>>> 
>>> commit ada1f577cc291336cbb69782075dbbf9fe746872
>>> Author:     Doongar Singh <doonbsd@gmail.com>
>>> AuthorDate: 2026-11-02 20:58:53 +0000
>>> Commit:     Ruslan Bukin <br@FreeBSD.org>
>>> CommitDate: 2026-11-02 21:05:46 +0000
>>> 
>>>   bhyve/riscv: correctly handle empty masks and broadcast in SBI IPI/RFNC
>>> 
>>>   Bhyve treats an empty cpu set as an error which triggers MPASS panic in
>>>   the guest. As per the SBI spec, empty masks should return SBI_SUCCESS,
>>>   and a base of -1UL specifies a broadcast to all harts.  Fix both in
>>>   vmm_sbi.c, clear a1 on return, and skip the SBI ecall in
>>>   sbi_ipi_pic_ipi_send() if the mask is empty. Also add a NULL check in
>>>   riscv_send_ipi().
>> 
>> Please revert this so it can be landed as several minimal commits that
>> each do one thing, not one big commit that does more things that
>> necessary all at once. See my initial feedback on the revision, though
>> I am still reading through the rest of it.
>> 
> 
> Sounds good. Was a bit in a hurry as bhyve guest currently does not boot
> without some of these bugfixes.

Yeah, I assumed that was the case. Unfortunately I had started
reviewing the changes earlier in the evening but broke for dinner, and
only submitted the initial couple of comments a few minutes before your
push.

Jessica