Hi Daniel,
On Wed, Nov 05, 2025 at 02:32:18PM +0100, Daniel Lezcano wrote:
You should replace __init by __init_or_module
That's not sufficient as the driver can still be rebound through sysfs currently (the driver would probably crash anyway, but that's a separate issue).
Also note that no drivers use __init_or_module these days, likely as everyone uses modules and it's not worth the added complexity in trying to get the section markers right for a build configuration that few people care about.
I can send a follow-on patch to suppress the unbind attribute, or include it in a v2 if you insist on using __init_or_module.
What do you prefer?
On 10/17/25 07:49, Johan Hovold wrote:
Platform drivers can be probed after their init sections have been discarded (e.g. on probe deferral or manual rebind through sysfs) so the probe function must not live in init. Device managed resource actions similarly cannot be discarded.
Johan