Re: Current status and possible improvements in CONFIG_MODULE_FORCE_UNLOAD

From: Lucas De Marchi
Date: Fri Jun 14 2024 - 14:48:23 EST


On Thu, Jun 06, 2024 at 06:49:59AM GMT, Aditya Garg wrote:
Hi

I am Aditya Garg. I often require using out of tree drivers to support various hardwares on Linux. Sometimes the provider doesn't write good drivers, and often they have to be force unloaded. It's a common thing in proprietary drivers. I know the author of the driver should take note of the issues, but still the force unloading of the modules does come in handy many times.

Unfortunately if CONFIG_MODULE_FORCE_UNLOAD is not enabled in your kernel, which most probably is not enabled if you are using a Distribution pre compiled kernel, you have to recompile the whole kernel again.

CONFIG_MODULE_FORCE_UNLOAD only ever makes sense on a developer
environment loading/unloading multiple times his own .ko module. Then
the developer knows better the state of the driver and hw to judge if
it's safe to ignore krefs.


I want wondering if instead of a kernel config option, we could use a kernel parameter to enable/disable this feature, I believe it should act as a better alternative. After all there must be people like me who are forced to recompile the whole linux kernel just for the sake of getting a functionality.

Just allowing it like this is not a good thing. You may have a all kind
of issues with use after free, dangling pointers etc. That would just
make life harder for people not involved with proprietary modules.


I hope for a reply and suggestions

I´d ask them to upstream their driver and start sending the issues to
their side.

Lucas De Marchi


Regards
Aditya