lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150508112248.2ce5af16@gandalf.local.home>
Date:	Fri, 8 May 2015 11:22:48 -0400
From:	Steven Rostedt <rostedt@...dmis.org>
To:	Rusty Russell <rusty@...tcorp.com.au>
Cc:	LKML <linux-kernel@...r.kernel.org>,
	Andrew Morton <akpm@...ux-foundation.org>,
	stable <stable@...r.kernel.org>,
	Pontus Fuchs <pontus.fuchs@...il.com>
Subject: Re: [PATCH] module: Call module notifier on failure after
 complete_formation()

On Fri, 8 May 2015 11:17:36 -0400
Steven Rostedt <rostedt@...dmis.org> wrote:

> 
> The module notifier call chain for MODULE_STATE_COMING was moved up before
> the parsing of args, into the complete_formation() call. But if the module failed
> to load after that, the notifier call chain for MODULE_STATE_GOING was
> never called and that prevented the users of those call chains from
> cleaning up anything that was allocated.
> 
> Link: http://lkml.kernel.org/r/554C52B9.9060700@gmail.com

You can nuke the "Link". I didn't realize Pontus didn't Cc any mailing
lists, and I manually just added it. Usually my scripts will check if
lkml was Cc'd and only add the "Link" tag if it was. Just shows you
that my scripts are smarter than I am.

-- Steve


> 
> Reported-by: Pontus Fuchs <pontus.fuchs@...il.com>
> Fixes: 4982223e51e8 "module: set nx before marking module MODULE_STATE_COMING"
> Cc: stable@...r.kernel.org # 3.16+
> Signed-off-by: Steven Rostedt <rostedt@...dmis.org>
> ---
>  kernel/module.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/kernel/module.c b/kernel/module.c
> index 42a1d2afb217..cfc9e843a924 100644
> --- a/kernel/module.c
> +++ b/kernel/module.c
> @@ -3370,6 +3370,9 @@ static int load_module(struct load_info *info, const char __user *uargs,
>  	module_bug_cleanup(mod);
>  	mutex_unlock(&module_mutex);
>  
> +	blocking_notifier_call_chain(&module_notify_list,
> +				     MODULE_STATE_GOING, mod);
> +
>  	/* we can't deallocate the module until we clear memory protection */
>  	unset_module_init_ro_nx(mod);
>  	unset_module_core_ro_nx(mod);

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ