svn commit: r345171 - head/usr.sbin/bhyve
Andrew Thompson
andy at fud.org.nz
Fri Mar 15 03:05:27 UTC 2019
On Fri, 15 Mar 2019 at 15:11, Chuck Tuffli <chuck at freebsd.org> wrote:
> Author: chuck
> Date: Fri Mar 15 02:11:28 2019
> New Revision: 345171
> URL: https://svnweb.freebsd.org/changeset/base/345171
>
> Log:
> Fix bhyve PCIe capability emulation
>
> PCIe devices starting with version 1.1 must set the Role-Based Error
> Reporting bit.
>
> And while we're in the neighborhood, generalize the code assigning the
> device type.
>
> Reviewed by: imp, araujo, rgrimes
> Approved by: imp (mentor)
> MFC after: 1 week
> Differential Revision: https://reviews.freebsd.org/D19580
>
> Modified:
> head/usr.sbin/bhyve/pci_emul.c
>
> Modified: head/usr.sbin/bhyve/pci_emul.c
>
> ==============================================================================
> --- head/usr.sbin/bhyve/pci_emul.c Fri Mar 15 02:11:27 2019
> (r345170)
> +++ head/usr.sbin/bhyve/pci_emul.c Fri Mar 15 02:11:28 2019
> (r345171)
> @@ -953,7 +953,10 @@ pci_emul_add_pciecap(struct pci_devinst *pi, int type)
> bzero(&pciecap, sizeof(pciecap));
>
> pciecap.capid = PCIY_EXPRESS;
> - pciecap.pcie_capabilities = PCIECAP_VERSION | PCIEM_TYPE_ROOT_PORT;
> + pciecap.pcie_capabilities = PCIECAP_VERSION | type;
> + /* Devices starting with version 1.1 must set the RBER bit */
> + if (PCIECAP_VERSION >= 1)
> + pciecap.dev_capabilities = PCIEM_CAP_ROLE_ERR_RPT;
> pciecap.link_capabilities = 0x411; /* gen1, x1 */
> pciecap.link_status = 0x11; /* gen1, x1 */
>
If the message you say 'set the bit' but you are overwriting the whole
variable, is this intended?
Andrew
More information about the svn-src-head
mailing list