svn commit: r345171 - head/usr.sbin/bhyve

Rodney W. Grimes freebsd at gndrsh.dnsmgr.net
Fri Mar 15 02:31:52 UTC 2019


> 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

This code requires maintainer approval before a commit,
though this was well reviewed that doesnt exclude it
from the MAINTAINERS entry.

Leave it for now, I am sure jhb or thyco are fine with it,
this is just a heads up FYI for future commits.

Bhyve code has been and still is under a fairly tight
MAINTAINER status.

> 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 */
>  
> 
> 

-- 
Rod Grimes                                                 rgrimes at freebsd.org


More information about the svn-src-head mailing list