Message ID | 20190624092109.863781858@infradead.org |
---|---|
State | Not Applicable |
Delegated to: | David Miller |
Headers | show |
Series | None | expand |
On Mon, Jun 24, 2019 at 11:18:46AM +0200, Peter Zijlstra wrote: > Now that notifiers got unbroken; use the proper interface to handle > notifier errors and propagate them. > > There were already MODULE_STATE_COMING notifiers that failed; notably: > > - jump_label_module_notifier() > - tracepoint_module_notify() > - bpf_event_notify() > > By propagating this error, we fix those users. > > Cc: Jessica Yu <jeyu@kernel.org> > Cc: Alexei Starovoitov <ast@kernel.org> > Cc: Daniel Borkmann <daniel@iogearbox.net> > Cc: Martin KaFai Lau <kafai@fb.com> > Cc: Song Liu <songliubraving@fb.com> > Cc: Yonghong Song <yhs@fb.com> > Cc: linux-kernel@vger.kernel.org > Cc: netdev@vger.kernel.org > Cc: bpf@vger.kernel.org > Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> > --- > kernel/module.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > --- a/kernel/module.c > +++ b/kernel/module.c > @@ -3643,9 +3643,10 @@ static int prepare_coming_module(struct > if (err) > return err; > > - blocking_notifier_call_chain(&module_notify_list, > - MODULE_STATE_COMING, mod); > - return 0; > + err = blocking_notifier_call_chain_error(&module_notify_list, > + MODULE_STATE_COMING, MODULE_STATE_GOING, mod); > + > + return notifier_to_errno(err); > } Argh, I messed up that klp thing again :/
--- a/kernel/module.c +++ b/kernel/module.c @@ -3643,9 +3643,10 @@ static int prepare_coming_module(struct if (err) return err; - blocking_notifier_call_chain(&module_notify_list, - MODULE_STATE_COMING, mod); - return 0; + err = blocking_notifier_call_chain_error(&module_notify_list, + MODULE_STATE_COMING, MODULE_STATE_GOING, mod); + + return notifier_to_errno(err); } static int unknown_module_param_cb(char *param, char *val, const char *modname,
Now that notifiers got unbroken; use the proper interface to handle notifier errors and propagate them. There were already MODULE_STATE_COMING notifiers that failed; notably: - jump_label_module_notifier() - tracepoint_module_notify() - bpf_event_notify() By propagating this error, we fix those users. Cc: Jessica Yu <jeyu@kernel.org> Cc: Alexei Starovoitov <ast@kernel.org> Cc: Daniel Borkmann <daniel@iogearbox.net> Cc: Martin KaFai Lau <kafai@fb.com> Cc: Song Liu <songliubraving@fb.com> Cc: Yonghong Song <yhs@fb.com> Cc: linux-kernel@vger.kernel.org Cc: netdev@vger.kernel.org Cc: bpf@vger.kernel.org Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> --- kernel/module.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)