Re: [PATCH] Whine about suspicious return values from module's->init() hook

From: Andrew Morton
Date: Mon Feb 04 2008 - 16:16:51 EST


On Mon, 4 Feb 2008 18:42:15 +0300
Alexey Dobriyan <adobriyan@xxxxx> wrote:

> One head-scratching session could be noticeably shorter with this patch...
>

Sorry, this is not an adequate description of why you think this patch
should be merged.

> ---
>
> kernel/module.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> --- a/kernel/module.c
> +++ b/kernel/module.c
> @@ -2171,6 +2171,12 @@ sys_init_module(void __user *umod,
> wake_up(&module_wq);
> return ret;
> }
> + if (ret > 0) {
> + printk(KERN_WARNING "%s: '%s'->init suspiciously returned %d\n"
> + KERN_WARNING "%s: loading module anyway...\n",
> + __func__, mod->name, ret,
> + __func__);
> + }
>
> /* Now it's a first class citizen! */
> mutex_lock(&module_mutex);

So we add a debug statement to detect a module init function which returns
positive non-zero values, which module init functions are not supposed to
do.

Fair enough. But a) the printk could state that more clearly and b) there
should be a comment in the code so that a developer (at whom this patch is
targetted) can go in and find out exactly what he did wrong.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/