[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 06/10] xen/arm: ffa: add UUID helpers for partition info
- To: Jens Wiklander <jens.wiklander@xxxxxxxxxx>
- From: Bertrand Marquis <Bertrand.Marquis@xxxxxxx>
- Date: Wed, 3 Dec 2025 13:23:35 +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=linaro.org 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=MvKnCVACC5fM57FYIbW30xlokoXBQ2PBkXaPTtBkJzc=; b=lwJUY2MepgM0XlbdivxBQqSpHPp0uZxwLC7cAGsvqEfAaMPexsMBKBTm3I2kZxmA9F5fGRWfnMwVzOLjisRvDVtezg/zku3SlAtMBOf8qV1yn1E64StEGTb32Z5Y833lvfAsHyn6/WK9VSTNPwlsAhsmIk9JZRTy2Z6DR/PcKg3mAtjUGSDMfdr8UCMcN4Z4076Coj+dBUDzYxsVW3cPsFcir4K9I2aF6SLqAzrpvCJUh4N95+ytvPLdNzHMMRCByK/wnjrDzjmftzNiMO3rDE1Z6375tY1BC1/CjnXpwIWRjyXEoBDAw0Z65knztC5zu7YZv51taHplDmEFmXU2/g==
- 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=MvKnCVACC5fM57FYIbW30xlokoXBQ2PBkXaPTtBkJzc=; b=lIHu/aMg0P+rxbfJLv+RThhsX7oql/sNDxSXxjkzGvHLCbrACi5E+HVfqAY5HFmSGzoaz6s8W/HL/NyOGtH7K7iYnOXfSTGo516NnWCSy/ncq1Vl6MJoVBfNEcbaGImt7V+nh4RBs7EVIKSKQOYBaFXRUcpKUf2VRLAeITtbsvnuh20PUExfMZQNNHtvYTC+ztP/K27YTPalYZB91OU7oJ2QqwAwYUjYZxGnjFA+oxec44+xOXlbD2AVs1idB+eqNFJvIL37Tgn19afjLXoyocDqcbqB2Xz6O37CyLQC9A6pU+vAOLZnr3jg4GQorfKuhQlTXNNBLDx7XbPUw+z8iw==
- Arc-seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=BjL+BJSe2MoEqLPACzjnD6NnLkpEtBZExCMDnxdY3qPygWR8wCjQUNLlOLsnq0zxP4BoowGtrrsHGVxSPWEUETdx6YucV6e7j4ytZdUfHHvOmefKteHk0Ops6AbGmLpuh6xMzg0NI+pHzLUWglH+67cB1mBi6sUVevolQ2SvEm33KBcsd34yJSQDCsdBQ48uqKTf+0jDvIeEtHdfG5yxH9G//7ZxH1YKMPIiKcB71OErj0SQSjuD5jswCbTv8bbcrdnyHbD32Idge7JWBMV+Y8JpjHF/wpeVN06P7pcd6YLocOSA0PtrFfCtOk7jrL7DYotnujaRKxFzA0nzw1w54A==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=NWmM3ZUrgCPZzdqGanDowpX+Damk6ec6u97RBMPjetJhnlc3/PHMClWh+bEW6JmbSoTYKfa0wnApqV3+EAwRPtY5qcznObE1te/CJ8IlwptFY/2d96pYn1mxVsQfAFn2EL12QXtO1BSX7EDvqfS987mhruA9uyjVZeNaS/nfzeFNpgiGAe+2z7UYzAzAm033Fy6lZ4RqfvqRLjoETHp6zJw4+7n8YGNCcFrKeBhE3fZvU/KUoQtaAM7edx4krUbl+Hj05kZI7he+MtdT0RVJzXSBsDVo4vq32kO5Sy6upSxjE+rlXUcUhk6rOTmW9xJg5PSEZgedaav0IIpKcGJaqg==
- 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>, Volodymyr Babchuk <volodymyr_babchuk@xxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>
- Delivery-date: Wed, 03 Dec 2025 13:25:09 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
- Nodisclaimer: true
- Thread-index: AQHcX7X1cV8Oy9wIyU2XZxYHvoEoGbUP5x4AgAAJd4A=
- Thread-topic: [PATCH 06/10] xen/arm: ffa: add UUID helpers for partition info
Hi Jens,
> On 3 Dec 2025, at 13:49, Jens Wiklander <jens.wiklander@xxxxxxxxxx> wrote:
>
> Hi Bertrand,
>
> On Thu, Nov 27, 2025 at 4:52 PM Bertrand Marquis
> <bertrand.marquis@xxxxxxx> wrote:
>>
>> Introduce struct ffa_uuid together with nil/equality/set helpers, and
>> use it end-to-end in the partition-info plumbing.
>>
>> The SP and VM enumeration paths now build UUIDs from the guest
>> registers, call a new ffa_copy_info() helper and ensure non-nil UUID
>> queries only return matching SP entries, relying on firmware UUID
>> filtering. VM entries are skipped because we do not track per-VM UUIDs.
>>
>> Count requests and subscriber initialisation are updated accordingly so
>> firmware is always called with an explicit UUID. This keeps count and
>> listing requests aligned with the FF-A v1.1 rules while preserving the
>> Linux compatibility workaround for v1.2 requesters.
>>
>> Signed-off-by: Bertrand Marquis <bertrand.marquis@xxxxxxx>
>> ---
>> xen/arch/arm/tee/ffa_partinfo.c | 206 ++++++++++++++++++++------------
>> xen/arch/arm/tee/ffa_private.h | 21 ++++
>> 2 files changed, 152 insertions(+), 75 deletions(-)
>>
>> diff --git a/xen/arch/arm/tee/ffa_partinfo.c
>> b/xen/arch/arm/tee/ffa_partinfo.c
>> index 3f4a779f4146..4adbe2736c94 100644
>> --- a/xen/arch/arm/tee/ffa_partinfo.c
>> +++ b/xen/arch/arm/tee/ffa_partinfo.c
>> @@ -33,7 +33,7 @@ static uint16_t subscr_vm_created_count __read_mostly;
>> static uint16_t *subscr_vm_destroyed __read_mostly;
>> static uint16_t subscr_vm_destroyed_count __read_mostly;
>>
>> -static int32_t ffa_partition_info_get(uint32_t *uuid, uint32_t flags,
>> +static int32_t ffa_partition_info_get(struct ffa_uuid uuid, uint32_t flags,
>> uint32_t *count, uint32_t *fpi_size)
>> {
>> struct arm_smccc_1_2_regs arg = {
>> @@ -41,15 +41,12 @@ static int32_t ffa_partition_info_get(uint32_t *uuid,
>> uint32_t flags,
>> .a5 = flags,
>> };
>> struct arm_smccc_1_2_regs resp;
>> - uint32_t ret;
>> + int32_t ret;
>>
>> - if ( uuid )
>> - {
>> - arg.a1 = uuid[0];
>> - arg.a2 = uuid[1];
>> - arg.a3 = uuid[2];
>> - arg.a4 = uuid[3];
>> - }
>> + arg.a1 = uuid.val[0] & 0xFFFFFFFFU;
>> + arg.a2 = (uuid.val[0] >> 32) & 0xFFFFFFFFU;
>> + arg.a3 = uuid.val[1] & 0xFFFFFFFFU;
>> + arg.a4 = (uuid.val[1] >> 32) & 0xFFFFFFFFU;
>
> You were switching to GENMASK in the previous patches, so we should
> probably use that here too.
Agree, I will fix that.
>
> With that fixed:
> Reviewed-by: Jens Wiklander <jens.wiklander@xxxxxxxxxx>
Thanks
Cheers
Bertrand
|