|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: PVH Dom0 related UART failure
On 23.05.2023 00:20, Stefano Stabellini wrote:
> On Sat, 20 May 2023, Roger Pau Monné wrote:
>> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
>> index ec2e978a4e6b..0ff8e940fa8d 100644
>> --- a/xen/drivers/vpci/header.c
>> +++ b/xen/drivers/vpci/header.c
>> @@ -289,6 +289,13 @@ static int modify_bars(const struct pci_dev *pdev,
>> uint16_t cmd, bool rom_only)
>> */
>> for_each_pdev ( pdev->domain, tmp )
>> {
>> + if ( !tmp->vpci )
>> + {
>> + printk(XENLOG_G_WARNING "%pp: not handled by vPCI for %pd\n",
>> + &tmp->sbdf, pdev->domain);
>> + continue;
>> + }
>> +
>> if ( tmp == pdev )
>> {
>> /*
>> diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
>> index 652807a4a454..0baef3a8d3a1 100644
>> --- a/xen/drivers/vpci/vpci.c
>> +++ b/xen/drivers/vpci/vpci.c
>> @@ -72,7 +72,12 @@ int vpci_add_handlers(struct pci_dev *pdev)
>> unsigned int i;
>> int rc = 0;
>>
>> - if ( !has_vpci(pdev->domain) )
>> + if ( !has_vpci(pdev->domain) ||
>> + /*
>> + * Ignore RO and hidden devices, those are in use by Xen and vPCI
>> + * won't work on them.
>> + */
>> + pci_get_pdev(dom_xen, pdev->sbdf) )
>> return 0;
>>
>> /* We should not get here twice for the same device. */
>
>
> Now this patch works! Thank you!! :-)
>
> You can check the full logs here
> https://gitlab.com/xen-project/people/sstabellini/xen/-/jobs/4329259080
>
> Is the patch ready to be upstreamed aside from the commit message?
I don't think so. vPCI ought to work on "r/o" devices. Out of curiosity,
have you also tried my (hackish and hence RFC) patch [1]?
Jan
[1] https://lists.xen.org/archives/html/xen-devel/2021-08/msg01489.html
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |