On Wed, Dec 17, 2025 at 09:21:41AM +0100, Uwe Kleine-König wrote:
Hello Sumit,
On Wed, Dec 17, 2025 at 01:25:39PM +0530, Sumit Garg wrote:
On Tue, Dec 16, 2025 at 12:08:38PM +0100, Uwe Kleine-König wrote:
On Tue, Dec 16, 2025 at 01:08:38PM +0530, Sumit Garg wrote:
On Mon, Dec 15, 2025 at 3:02 PM Uwe Kleine-König u.kleine-koenig@baylibre.com wrote:
- Why does optee_probe() in drivers/tee/optee/smc_abi.c unregister all optee devices in its error path (optee_unregister_devices())?
This is mostly to take care of if any device got registered before the failure occured. Let me know if you have a better way to address that.
Without understanding the tee stuff, I'd say: Don't bother and only undo the things that probe did before the failure.
True, but this is special case where if there is any leftover device registered from the TEE implementation then it is likely going to cause the corresponding kernel client driver crash.
You are aware that this is racy? So if a driver crashes e.g. after teedev_close_context() it might happen that it is registered just after optee_unregister_devices() returns.
I see your point about the unavoidable race. Maybe it's better to not try anything and let the kernel client driver fail.
-Sumit