Re: [RFC][PATCH] module: Propagate MODULE_STATE_COMING notifier errors

2019-06-21 Thread Jessica Yu
+++ Peter Zijlstra [19/06/19 13:23 +0200]: On Wed, Jun 19, 2019 at 01:12:12PM +0200, Miroslav Benes wrote: > @@ -3780,7 +3781,7 @@ static int load_module(struct load_info *info, const char __user *uargs, > >err = prepare_coming_module(mod); >if (err) > - goto bug_cleanup; > +

Re: [RFC][PATCH] module: Propagate MODULE_STATE_COMING notifier errors

2019-06-21 Thread Jessica Yu
+++ Miroslav Benes [19/06/19 13:12 +0200]: On Mon, 17 Jun 2019, Peter Zijlstra wrote: Some module notifiers; such as jump_label_module_notifier(), tracepoint_module_notify(); can fail the MODULE_STATE_COMING callback (due to -ENOMEM for example). However module.c:prepare_coming_module()

Re: [RFC][PATCH] module: Propagate MODULE_STATE_COMING notifier errors

2019-06-19 Thread Peter Zijlstra
On Wed, Jun 19, 2019 at 01:35:08PM +0200, Peter Zijlstra wrote: > On Wed, Jun 19, 2019 at 01:33:24PM +0200, Peter Zijlstra wrote: > > How's something like so: > > > > diff --git a/kernel/module.c b/kernel/module.c > > index 80c7c09584cf..eba6560c89da 100644 > > --- a/kernel/module.c > > +++

Re: [RFC][PATCH] module: Propagate MODULE_STATE_COMING notifier errors

2019-06-19 Thread Petr Mladek
On Wed 2019-06-19 13:12:12, Miroslav Benes wrote: > On Mon, 17 Jun 2019, Peter Zijlstra wrote: > > --- a/kernel/module.c > > +++ b/kernel/module.c > > @@ -3638,9 +3638,10 @@ static int prepare_coming_module(struct module *mod) > > if (err) > > return err; > > > > -

Re: [RFC][PATCH] module: Propagate MODULE_STATE_COMING notifier errors

2019-06-19 Thread Peter Zijlstra
On Wed, Jun 19, 2019 at 01:33:24PM +0200, Peter Zijlstra wrote: > How's something like so: > > diff --git a/kernel/module.c b/kernel/module.c > index 80c7c09584cf..eba6560c89da 100644 > --- a/kernel/module.c > +++ b/kernel/module.c > @@ -3631,16 +3631,28 @@ static int complete_formation(struct

Re: [RFC][PATCH] module: Propagate MODULE_STATE_COMING notifier errors

2019-06-19 Thread Peter Zijlstra
On Wed, Jun 19, 2019 at 01:23:50PM +0200, Peter Zijlstra wrote: > On Wed, Jun 19, 2019 at 01:12:12PM +0200, Miroslav Benes wrote: > > > @@ -3780,7 +3781,7 @@ static int load_module(struct load_info *info, > > > const char __user *uargs, > > > > > > err = prepare_coming_module(mod); > > > if

Re: [RFC][PATCH] module: Propagate MODULE_STATE_COMING notifier errors

2019-06-19 Thread Peter Zijlstra
On Wed, Jun 19, 2019 at 01:12:12PM +0200, Miroslav Benes wrote: > On Mon, 17 Jun 2019, Peter Zijlstra wrote: > > > > > Some module notifiers; such as jump_label_module_notifier(), > > tracepoint_module_notify(); can fail the MODULE_STATE_COMING callback > > (due to -ENOMEM for example). However

Re: [RFC][PATCH] module: Propagate MODULE_STATE_COMING notifier errors

2019-06-19 Thread Peter Zijlstra
On Wed, Jun 19, 2019 at 01:12:12PM +0200, Miroslav Benes wrote: > > @@ -3780,7 +3781,7 @@ static int load_module(struct load_info *info, const > > char __user *uargs, > > > > err = prepare_coming_module(mod); > > if (err) > > - goto bug_cleanup; > > + goto

Re: [RFC][PATCH] module: Propagate MODULE_STATE_COMING notifier errors

2019-06-19 Thread Miroslav Benes
On Mon, 17 Jun 2019, Peter Zijlstra wrote: > > Some module notifiers; such as jump_label_module_notifier(), > tracepoint_module_notify(); can fail the MODULE_STATE_COMING callback > (due to -ENOMEM for example). However module.c:prepare_coming_module() > ignores all such errors, even though this

Re: [RFC][PATCH] module: Propagate MODULE_STATE_COMING notifier errors

2019-06-17 Thread Steven Rostedt
On Mon, 17 Jun 2019 11:03:35 +0200 Peter Zijlstra wrote: > Some module notifiers; such as jump_label_module_notifier(), > tracepoint_module_notify(); can fail the MODULE_STATE_COMING callback > (due to -ENOMEM for example). However module.c:prepare_coming_module() > ignores all such errors, even

[RFC][PATCH] module: Propagate MODULE_STATE_COMING notifier errors

2019-06-17 Thread Peter Zijlstra
Some module notifiers; such as jump_label_module_notifier(), tracepoint_module_notify(); can fail the MODULE_STATE_COMING callback (due to -ENOMEM for example). However module.c:prepare_coming_module() ignores all such errors, even though this function can already fail due to