Re: PATCH v6 0/6] livepatch: Atomic replace feature

From: Josh Poimboeuf
Date: Thu Feb 01 2018 - 10:18:19 EST


On Thu, Feb 01, 2018 at 04:08:14PM +0100, Miroslav Benes wrote:
> On Thu, 1 Feb 2018, Joe Lawrence wrote:
>
> > On 02/01/2018 08:49 AM, Miroslav Benes wrote:
> > >
> > > Well, one more thing. I think there is a problem with shadow variables.
> > > Similar to callbacks situation. Shadow variables cannot be destroyed the
> > > way it is shown in our samples. Cumulative patches want to preserve
> > > everything as much as possible. If I'm right, it should be mentioned in
> > > the documentation.
> >
> > Are you talking about using klp_shadow_free_all() call in a module_exit
> > routine? Yeah, I think in this case, that responsibility would be
> > passed to the newly loaded cumulative patch, right?
>
> Yes, but we haven't got an option not to call it here (as with callbacks,
> where we can omit callbacks completely with atomic replace patches). A
> live patch author must be aware of this and use shadow variables
> appropriately.

So maybe we should recommend that shadow variables generally be freed
from a post-unpatch callback.

--
Josh