Re: [PATCH] livepatch: fix merge bug in klp_cleanup_module_patches_limited()
From: Josh Poimboeuf
Date: Tue Oct 31 2017 - 16:24:44 EST
On Tue, Oct 31, 2017 at 09:12:07PM +0100, Jiri Kosina wrote:
> On Tue, 31 Oct 2017, Josh Poimboeuf wrote:
>
> > When the patch for "livepatch: add (un)patch callbacks" was posted to
> > the mailing list at:
> >
> > https://lkml.kernel.org/r/1507921723-1996-2-git-send-email-joe.lawrence@xxxxxxxxxx
> >
> > ... it was based on top of the following commit:
> >
> > ef8daf8eeb5b ("livepatch: unpatch all klp_objects if klp_module_coming fails").
> >
> > But when it was applied to git on the livepatching
> > for-4.15/shadow-variables branch, that branch was missing the above
> > commit. The patch was rebased accordingly:
> >
> > 93862e385ded ("livepatch: add (un)patch callbacks")
> >
> > Then the two above commits were merged into livepatching/for-next:
> >
> > 6a18fdf2d8d3 ("Merge branch 'for-4.15/callbacks' into for-next"),
> >
> > The result of the merge commit was that the klp_post_unpatch_callback()
> > call in the klp_cleanup_module_patches_limited() function disappeared.
> > The original patch on the mailing list had that call, so put it back.
> >
> > Fixes: 6a18fdf2d8d3 ("Merge branch 'for-4.15/callbacks' into for-next")
> > Signed-off-by: Josh Poimboeuf <jpoimboe@xxxxxxxxxx>
> > ---
> > kernel/livepatch/core.c | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> > diff --git a/kernel/livepatch/core.c b/kernel/livepatch/core.c
> > index 30e392858281..de9e45dca70f 100644
> > --- a/kernel/livepatch/core.c
> > +++ b/kernel/livepatch/core.c
> > @@ -875,6 +875,8 @@ static void klp_cleanup_module_patches_limited(struct module *mod,
> > pr_notice("reverting patch '%s' on unloading module '%s'\n",
> > patch->mod->name, obj->mod->name);
> > klp_unpatch_object(obj);
> > +
> > + klp_post_unpatch_callback(obj);
>
> Bah, thanks a lot for spotting and fixing my brainfart, really
> appreciated.
>
> Now, the only branch I could actually technically apply this patch to
> would be for-next, but that'd be useless, as that is only an
> integration/testing branch, that doesn't get merged anywhere else than
> linux-next.
Makes sense, I didn't know the rebase policy for that branch.
> Would you be okay with me just redoing the merge into for-next with this
> fixup attributed to you in the merge message (and my git-rerere picking it
> up for upstream)?
Sure, no problem.
--
Josh