[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <dbd809fd-9d1e-435c-892b-4757f7edd9b7@oss.qualcomm.com>
Date: Fri, 5 Dec 2025 19:41:32 +0530
From: Harshal Dev <harshal.dev@....qualcomm.com>
To: Arnd Bergmann <arnd@...db.de>, Jens Wiklander
<jens.wiklander@...aro.org>,
Arnd Bergmann <arnd@...nel.org>
Cc: Paul Walmsley <pjw@...nel.org>, Palmer Dabbelt <palmer@...belt.com>,
Albert Ou <aou@...s.berkeley.edu>,
Amirreza Zarrabi <amirreza.zarrabi@....qualcomm.com>,
Sumit Garg <sumit.garg@....qualcomm.com>,
Sumit Garg
<sumit.garg@...nel.org>, Alexandre Ghiti <alex@...ti.fr>,
Etienne Carriere <etienne.carriere@...s.st.com>,
Randy Dunlap <rdunlap@...radead.org>, op-tee@...ts.trustedfirmware.org,
linux-kernel@...r.kernel.org, linux-riscv@...ts.infradead.org
Subject: Re: [PATCH] tee: fix tee_ioctl_object_invoke_arg padding
On 12/5/2025 7:26 PM, Arnd Bergmann wrote:
> On Fri, Dec 5, 2025, at 14:45, Harshal Dev wrote:
>> On 12/4/2025 6:57 PM, Jens Wiklander wrote:
>>> On Thu, Dec 4, 2025 at 11:17 AM Arnd Bergmann <arnd@...nel.org> wrote:
>>>
>> The only user-space client which is currently using this ABI (as per
>> our knowledge)
>> is the libqcomtee library:
>> https://github.com/quic/quic-teec/blob/main/libqcomtee/src/linux/tee.h#L432
>>
>> If I understand Arnd's concern correctly, if a compiler used to build
>> the user-space
>> client skips the padding for tee_ioctl_object_invoke_arg, it could lead
>> to issues.
>>
>> Let's wait for Amir's view here as well, however I do think the
>> explicit padding would
>> benefit here.
>>
>
> The problem is much narrower: as the amount of padding is determined
> by the architecture specific ABI, kernel and userspace on the same
> architecture always agree, and specifically 32-bit Arm userspace
> and 64-bit Arm userspace (aarch64) also have the same rules, so there
> is no problem on Qualcomm's platforms even with compat 32-bit userspace.
>
> The only actual ABI problem would happen on 32-bit x86 (i386)
> userspace running on a 64-bit x86 kernel, since i386-linux compilers
> have different alignment rules from most other architectures.
>
Well, as Jens pointed out, the TEE_IOC_OBJECT_INVOKE ABI which supports
object-based IPC currently has no back-end drivers that attempt to communicate
with a TEE running on x86 and implementing their end of the object-IPC protocol
in the firmware. So this obviously won't be an immediate issue.
But as you pointed out, the issue would pop up if someone on x86 decides to implement
it at some point in the far away future.
I do not see any harm this patch would do for our existing implementation, we'll
just update our user-space library ABI in-line with this.
Thanks,
Harshal
> Arnd
Powered by blists - more mailing lists