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

Re: [PATCH v3 3/5] xen/arm: make has_vpci() depend on d->arch.has_vpci


  • To: Julien Grall <julien@xxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Stewart Hildebrand <stewart.hildebrand@xxxxxxx>
  • Date: Wed, 25 Oct 2023 15:19:06 -0400
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=RASlQHoru4oseIk41rX07mI1o7EkWFyJ2TklU0lx76I=; b=PIYDb9NPgbK1x/1vCri+oPdztCD7O88VzY4vFZ6IeGj0oP6LqYnVhSToOC6upVzdUKYm/4FotOQ/eJrTQ80zpNmWYpmA54FOw4bwkjLNZq7oUFCZ14x14eq6gI1LLZNPwcMfTCG8CTquqU+7j97lTE8f7MH/EHWqTnEQnKUEXK/v5Yk3pCbaInade0/oDNRXOKRtlLxc/vEzd/eUb55IISoCzMp7ye8oEICnO4rmunYKTtMUpi2RFYB9oZqABqhW5sw//Xdq6vj9w3DGF6sNkh/TFN+cIt0a5ZSdIC8mHTG2KKrP549KchzakiQe4z8+zTu1v5qY5+Ceuv2D/kAxKA==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=E3GnuVDhmUhivyLdq2DZSfC4HslZZm19konEXXXlCsB+MVxwp9cK7kpZhSFIVuHZ9U6bB8J6bPCdulZGPXlLX995b+lnmyKMPFNYhj+GMs6YC7j+5mArUi805t9W0ax90+7+6YyjviL1FJozeMBOv4FsY1pe6G7TUfci0MamOUZHT4ClrgkrTzUDmwpfSx+0K8uvdSQYAl4YOD/NPb0hJh/hGMAGLRxGiP5SNUt+0N57etwiF0hcddmKpjrm4ql/NZjiEd3rLeJcV1HFCeVG7CVy50rDaYFnAfcYCkN4DZNBDBcOT1MGAW4uX3hoZqCTlvgu7mByAkFJKcTafY8B5A==
  • Cc: Oleksandr Andrushchenko <oleksandr_andrushchenko@xxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Bertrand Marquis <bertrand.marquis@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Rahul Singh <rahul.singh@xxxxxxx>
  • Delivery-date: Wed, 25 Oct 2023 19:19:39 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 10/20/23 13:29, Julien Grall wrote:
> Hi,
> 
> On 09/10/2023 20:57, Stewart Hildebrand wrote:
>> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@xxxxxxxx>
>>
>> VPCI is disabled on ARM. Make it depend on d->arch.has_vpci to enable the PCI
>> passthrough support on ARM.
>>
>> While here, remove the comment on the preceding line.
>>
>> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@xxxxxxxx>
>> Signed-off-by: Rahul Singh <rahul.singh@xxxxxxx>
>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@xxxxxxx>
> 
> I think this patch should be folded in patch #2. With that the
> hypervisor part would be properly plumbed as soon as the flag is introduced.

Will do. If moving the vpci flag to xen_domctl_createdomain.flags, there is not 
much arch specific about has_vpci(d), so I think this could also be moved to a 
common header, like xen/include/xen/domain.h.

> 
>> ---
>> There are two downstreams [1] [2] that have independently made a version this
>> change, each with different Signed-off-by's. I simply picked one at random 
>> for
>> the Author: field, and added both Signed-off-by lines. Please let me know if
>> there are any objections.
>>
>> v2->v3:
>> * use d->arch.has_vpci since plumbing struct arch_domain with a vPCI flag
>>
>> v1->v2:
>> * add is_hardware_domain check. This will need to be removed after the vPCI
>>    series [3] is merged.
>>
>> downstream->v1:
>> * change to IS_ENABLED(CONFIG_HAS_VPCI) instead of hardcoded to true
>> * remove the comment on the preceding line
>>
>> [1] 
>> https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc/-/commit/27be1729ce8128dbe37275ce7946b2fbd2e5a382
>> [2] 
>> https://github.com/xen-troops/xen/commit/bf12185e6fb2e31db0d8e6ea9ccd8a02abadec17
>> [3] 
>> https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02361.html
>> ---
>>   xen/arch/arm/include/asm/domain.h | 3 +--
>>   1 file changed, 1 insertion(+), 2 deletions(-)
>>
>> diff --git a/xen/arch/arm/include/asm/domain.h 
>> b/xen/arch/arm/include/asm/domain.h
>> index 0a66ed09a617..ebba2c25dceb 100644
>> --- a/xen/arch/arm/include/asm/domain.h
>> +++ b/xen/arch/arm/include/asm/domain.h
>> @@ -300,8 +300,7 @@ static inline void arch_vcpu_block(struct vcpu *v) {}
>>
>>   #define arch_vm_assist_valid_mask(d) (1UL << 
>> VMASST_TYPE_runstate_update_flag)
>>
>> -/* vPCI is not available on Arm */
>> -#define has_vpci(d)    ({ (void)(d); false; })
>> +#define has_vpci(d) ( (d)->arch.has_vpci )
> 
> Coding style: I don't believe we add space after ( and before ) in this
> situation.

OK

> 
> Cheers,
> 
> -- 
> Julien Grall



 


Rackspace

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