[igt-dev] [PATCH i-g-t v2 2/4] lib/igt_kmod.c: check if module is builtin before attempting to unload it

Kamil Konieczny kamil.konieczny at linux.intel.com
Mon Aug 29 07:43:38 UTC 2022


Hi Isabella,

On 2022-08-28 at 21:09:18 -0300, Isabella Basso wrote:
> This change makes `igt_module_unload_r` safer as it checks whether the
> module can be unloaded before attempting it.

Nice catch.

> 
> Signed-off-by: Isabella Basso <isabbasso at riseup.net>
> ---
>  lib/igt_kmod.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/lib/igt_kmod.c b/lib/igt_kmod.c
> index bb6cb7bb..97cac7f5 100644
> --- a/lib/igt_kmod.c
> +++ b/lib/igt_kmod.c
> @@ -256,6 +256,9 @@ static int igt_kmod_unload_r(struct kmod_module *kmod, unsigned int flags)
>  	struct kmod_list *holders, *pos;
>  	int err = 0;
>  
> +	if (kmod_module_get_initstate(kmod) == KMOD_MODULE_BUILTIN)
> +		return err;
---------------------- ^

imho this should return non-zero error, like -ENOTSUP or just -errno.

Regards,
Kamil

> +
>  	holders = kmod_module_get_holders(kmod);
>  	kmod_list_foreach(pos, holders) {
>  		struct kmod_module *it = kmod_module_get_module(pos);
> -- 
> 2.37.2
> 


More information about the igt-dev mailing list