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

Re: [PATCH v5 2/3] arm/mpu: Introduce `v8r_el1_msa` device tree property for domains


  • To: "Orzel, Michal" <Michal.Orzel@xxxxxxx>
  • From: Luca Fancellu <Luca.Fancellu@xxxxxxx>
  • Date: Mon, 11 May 2026 10:44:33 +0000
  • Accept-language: en-GB, en-US
  • Arc-authentication-results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=amd.com smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com])
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none
  • Arc-message-signature: i=2; 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=7Nxr9pLZSiMWqsWhbZB/mQXbRf/uUqO+o48bL0WzCyM=; b=jrohP2vgNO1ScSabIO+VdpJrHrATc6qXDX0iGSBpw2bf6jKvkrmJdXOQ/hZPv/ZO3qtU4arMYgWkD3/yINlwDlKTZNnCmFQ3VxMDx9oQrRDzsb/VsrWEzmE134bRTdSvKklHuRyL1aB2biYQU7AhUp1HrRp/VZNYUPwlwqAR2nZTrzg48EX9w376iAZaIo2diK51OQWd1widmTGltyp16cLcWc2B8nNOZtdfmW7XqVSJdfJcNyTHZhxJlSCR+afJEL+F3/UjVsT7e4T+AkNJeI9mo5gkuxAHJX406UopZ8xKmJ4twN03tTbEgl7/sor2HBfnYwspIDRSS8P6Q1Nfyg==
  • 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=7Nxr9pLZSiMWqsWhbZB/mQXbRf/uUqO+o48bL0WzCyM=; b=W4qY0wUfM3lmFr0i/C6vodGsI74KrvVBxUWjUbspJ/4QVud1ilhlWrUp1K8nD+nBtONC9cnKCjLX52sirhW/wCdfO0WP6y1/viwqz8pbIDvbsZZVX1UpGmHboK9ar7us38bs7LSSx970ceGFoa1RgSJwps2p4u6LR+wDflYvOXha7OWT1vak0wdcggh31rvNZvQRjYPbU/xC545RyP1m49sknBPsyKhxWEGzIMkh4Cf/kcAI4/TQyYSXzUbSXZybx0hEbpJ7d7mbvKYJNul8P+byI0UwS6GsQLm6YKPVPo7KGpwhmQfiY7fy3PZcTz/tAkLNRof4KoS+iQOkSC/lyw==
  • Arc-seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=mrjktAf/+WtNaIbd3hZvScts17RzVIAR5x8OhtLkOo84eeaqLqyw+cNrDbu+6OnvWio/8HXDr7pXfVq+2+upzW9DXS8WfjfonHhJ9X6tMFkyjFM+Z82RpVLe+FOXOZmBKJ2yDI2m2oRPPnjGynQYF/HUn7vbYjAr01N+p2jsrvMBVjY3AmDYEUMQ1JNBqzurOqULc8XiSVxCMs5pOAIbQOLwQsM9+fEWltpcg+ZNnKLhFtNzDTfFtKUr5dq5BxjRLy4KU1mCVURS3J2GLmygvOCyyeNNprrChJgnUgmRjbGq9UDU1DubgbBc0TrjcqGau1tdJOqgguu5Iz0YCYUYKA==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=nl0oEmtEy3Y7q78MDGvgW0URlty4Ya9vB249zy9MLykBOHj/j37QokiG/1isFZgqvmMfrTaSorc12iVuKJcy37qASeMV+Ib6FVg5gwThDoAoFgkC0DfCTDeKIUL8BgI5Z0L+OME4YfNaY7fVXM0ypbWnkVko0MZ2a4ttZQoZkCMqBvNiHmsnQKmFxvFcM4/p4bE9Go2u50FMuzvRBgFXtEjulFM2smkh3CHemzBZM77Vx4Gg35NQeIxam1+UqxJGjBUu3TAqVc6zBXDNNxCw7uxrrK+1pe+IeHhRhRDxXsG71NjYNkC0BmTlFalQFJeSH7Z03Bz38FsxagFsO7obng==
  • Authentication-results: eu.smtp.expurgate.cloud; dkim=pass header.s=selector1 header.d=arm.com header.i="@arm.com" header.h="From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck"; dkim=pass header.s=selector1 header.d=arm.com header.i="@arm.com" header.h="From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck"
  • Authentication-results-original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com;
  • Cc: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Harry Ramsey <Harry.Ramsey@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Bertrand Marquis <Bertrand.Marquis@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>
  • Delivery-date: Mon, 11 May 2026 10:45:48 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Nodisclaimer: true
  • Thread-index: AQHc3vfGpFkxMscyakiMWMN4gJbZfLYIoFeAgAAH44A=
  • Thread-topic: [PATCH v5 2/3] arm/mpu: Introduce `v8r_el1_msa` device tree property for domains

Hi Michal,

>> diff --git a/xen/arch/arm/include/asm/domain_build.h 
>> b/xen/arch/arm/include/asm/domain_build.h
>> index 6674dac5e2f8..50ddc0511e7e 100644
>> --- a/xen/arch/arm/include/asm/domain_build.h
>> +++ b/xen/arch/arm/include/asm/domain_build.h
>> @@ -19,6 +19,27 @@ int prepare_acpi(struct domain *d, struct kernel_info 
>> *kinfo);
>> 
>> int add_ext_regions(unsigned long s_gfn, unsigned long e_gfn, void *data);
>> 
>> +#ifdef CONFIG_MPU
>> +/* Utility function to determine if an Armv8-R processor supports VMSA. */
>> +bool has_v8r_vmsa_support(void);
>> +bool v8r_el1_msa_domain_sanitise_config(
>> +    const struct xen_domctl_createdomain *config);
>> +#else
>> +static inline bool has_v8r_vmsa_support(void)
>> +{
>> +    return false;
>> +}
>> +
>> +static inline bool v8r_el1_msa_domain_sanitise_config(
>> +    const struct xen_domctl_createdomain *config)
> Why can't this function be common? I can see 3 definitions (Arm64 MPU, Arm32
> MPU, MMU) but they do not have anything that would prevent from generalizing
> them in a single function.

I can do a common one I think, just to be aligned, should the common one 
behaves as the current implementation?

Arm64/32 MMU: Only v8r_el1_msa == XEN_DOMCTL_CONFIG_ARM_V8R_EL1_MSA_NONE allowed
Arm64: Only v8r_el1_msa == XEN_DOMCTL_CONFIG_ARM_V8R_EL1_MSA_{NONE,PMSA,VMSA}  
allowed
Arm32: Only v8r_el1_msa == XEN_DOMCTL_CONFIG_ARM_V8R_EL1_MSA_{NONE,PMSA}  
allowed


I’ll fix all your other findings and I’ll address Jan comment on the explicit 
padding + check.

Cheers,
Luca


 


Rackspace

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