[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v2 4/4] vPCI/DomU: really no ext-caps without extended config space


  • To: Jan Beulich <jbeulich@xxxxxxxx>
  • From: Roger Pau Monné <roger.pau@xxxxxxxxxx>
  • Date: Thu, 29 Jan 2026 11:51:06 +0100
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=UO/E02JirUS5JmHhGw9XAwa7apOL8OVyB2EcQjRhBPc=; b=GTgqOc8WkrQjlkbaY0xcbsEOoTK1Lt07TrZ9LxYRaigeKch8/F4wMmHyvRKM7hCSRexqpcFIIhqFicQM3moS0M2a8+PK3Uz0C9X9CLSMI0pD2ETXSsHGmzz82EbxgqakzuF8lZ1UKXJqeKE/jrEGSmTRs02CHTCePB3zUuQ3h7Oq9EhYoi9E6OxtSr2kfLQpcUapwcnGKli2RjS2k5+GJwfIx5BdxNDcwJP9iPlJgDYnB2WPRcDzl9QxtX46O9YJ+TI4I2jWwduCIh3UF0YRTu9kql1YRzBXBiNTfl/CkwPCxVGg5Ugxfnhm3enHotFBgHoN41WEZtVtSpRyC7vWXQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=k+JHizkAw9AIuKp/GWerpciJxJGWRnzsCtznX6cjSxp+N+YUGhkMtpIBBIMyJ992IRgerSiyj9WmKQgTvBUjjzgtmLT+mMY75GCZT18Vf95ZhGaHrBgrX7vBUTWn3r9QwiRyp87R1MGWfOKEsjJpyGpeRhYRy+k0jrRL1I8P1DJF1CPgXnqhT0cET5Fgt7/DeO8zZK1hP7u1pMzjzxl0KzaGKELYcYv/3P6yWPKnYb0Q37W/IPTCitklA3qqdyTKNvJzWnM9yRXBR+Wz3nUEbSyxw4JEBh1RliOxxZ7E2/XuSbubGHIaUFqTHnGyrBuRNVL8ioEL7jgSaqpE3oo81Q==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com;
  • Cc: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Stewart Hildebrand <stewart.hildebrand@xxxxxxx>
  • Delivery-date: Thu, 29 Jan 2026 10:51:24 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On Thu, Jan 29, 2026 at 11:08:22AM +0100, Jan Beulich wrote:
> On 29.01.2026 10:19, Roger Pau Monné wrote:
> > On Mon, Jan 19, 2026 at 03:48:01PM +0100, Jan Beulich wrote:
> >> --- a/xen/drivers/vpci/header.c
> >> +++ b/xen/drivers/vpci/header.c
> >> @@ -830,9 +830,14 @@ static int vpci_init_ext_capability_list
> >>      unsigned int pos = PCI_CFG_SPACE_SIZE;
> >>  
> >>      if ( !is_hardware_domain(pdev->domain) )
> >> +    {
> >> +        if ( !pdev->ext_cfg )
> >> +            return 0;
> > 
> > Don't you want to possibly put this as a top-level check, so if
> > there's no extended config space we avoid doing the PCI_CFG_SPACE_SIZE
> > read for dom0 also?
> 
> Hmm, yes, didn't think about that. That'll mean dropping the
> "if ( pos != PCI_CFG_SPACE_SIZE )" from the body of the
> "if ( header == 0xffffffffU )" then, i.e. the printk() there becoming
> unconditional. It may also mean dropping "DomU" from the subject.

I've also wondered whether we want to short-circuit vpci_{read,write}
accesses if the device doesn't have extended cfg, for domUs to be on
the safe side.

Thanks, Roger.



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.