On Mon, 11 Oct 2021 at 14:59, Jens Wiklander jens.wiklander@linaro.org wrote:
On Fri, Oct 8, 2021 at 9:21 PM Jerome Forissier jerome@forissier.org wrote:
Hi Sudeep,
On 10/8/21 6:32 PM, Sudeep Holla wrote:
On Fri, Oct 08, 2021 at 02:27:32PM +0100, Sudeep Holla wrote:
On Wed, Oct 06, 2021 at 09:09:02AM +0200, Jens Wiklander wrote:
Adds support for using FF-A [1] as transport to the OP-TEE driver.
Introduces struct optee_msg_param_fmem which carries all information needed when OP-TEE is calling FFA_MEM_RETRIEVE_REQ to get the shared memory reference mapped by the hypervisor in S-EL2. Register usage is also updated to include the information needed.
The FF-A part of this driver is enabled if CONFIG_ARM_FFA_TRANSPORT is enabled.
I am not sure if I missed this with earlier version but I see the below warning the second time I insert the optee module. I am sure I tested it with previous version when I was fixing issues with FF-A as a module.
Not sure if I am missing something in my steps.
OK, more info, indeed I didn't observe this issue 2 weeks back with optee at commit 57e642f12085 ("core: enable system PTA upon user TA support"). The UUID(d96a5b40-c3e5-21e3-8794-1002a5d5c61b) wasn't enumerated with above commit. Today I am testing the latest commit 2de2880065f3 ("core: update reference link to PrimeCell Cache Controller").
Though it looks like an issue with the driver, the latest optee changes triggered the driver to hit this issue in my setup. Hope this helps.
Totally makes sense. The optee_os commit triggering this is almost certainly 811c42d40cd0 ("plat-vexpress: enable CFG_ENABLE_EMBEDDED_TESTS by default"). With this commit, the "invoke tests" PTA gets included by default in the TEE binary. This PTA has the TA_FLAG_DEVICE_ENUM flag so it is enumerated by the Linux driver. AFAICT the vexpress platform has no other PTA with that flag, so as you said the OP-TEE commit is simply exposing a bug in the Linux driver.
IIUC we are not undoing optee_register_device executed via optee_enumerate_devices in the exit path.
Thanks Sudeep for spotting this issue. I have sent a corresponding fix [1], give it a try and let me know if you observe any further issues.
[1] https://lkml.org/lkml/2021/10/12/136
-Sumit
That doesn't sound good indeed ;)
Thanks for the analysis, I'll look into this.
Cheers, Jens