Re: git: 2eb2079554f4 - main - bhyve: keep physical and virtual COMMAND reg in sync

From: John Baldwin <jhb_at_FreeBSD.org>
Date: Mon, 22 Nov 2021 16:38:33 UTC
On 11/22/21 7:30 AM, Emmanuel Vadot wrote:
> The branch main has been updated by manu:
> 
> URL: https://cgit.FreeBSD.org/src/commit/?id=2eb2079554f4d54c4283410b4ee1aca549b29616
> 
> commit 2eb2079554f4d54c4283410b4ee1aca549b29616
> Author:     Corvin Köhne <CorvinK@beckhoff.com>
> AuthorDate: 2021-11-22 15:26:03 +0000
> Commit:     Emmanuel Vadot <manu@FreeBSD.org>
> CommitDate: 2021-11-22 15:26:03 +0000
> 
>      bhyve: keep physical and virtual COMMAND reg in sync
>      
>      On startup all virtual BARs are registered.
>      Additionally, the encoding bit in the virtual cmd register is set.
>      After that, the passthru emulation overwrites the virtual cmd register with
>      the physical one.
>      This could lead to a mismatch between registered BARs and the encoding
>      bits in the cmd register.
>      Instead of writing the physical to the virtual cmd register,
>      write the virtual to the physical cmd register to solve this issue.
>      
>      Reviewed by:      markj
>      Differential Revision:  https://reviews.freebsd.org/D32687
>      Sponsored by:   Beckhoff Automation GmbH & Co. KG

Humm, I wonder if my older patch that tries to handle the command register
more deterministically might have handled this.  The patch tried to fix an
open bug where you can't use a XHCI controller via passthru after you have
rebooted a Linux guest.  It makes this write here conditional:

https://reviews.freebsd.org/D20623

-- 
John Baldwin