Re: [PATCH v14 04/11] livepatch: Refuse to unload only livepatches available during a forced transition

From: Miroslav Benes
Date: Thu Dec 06 2018 - 04:18:38 EST


On Thu, 6 Dec 2018, Petr Mladek wrote:

> On Mon 2018-12-03 16:29:32, Miroslav Benes wrote:
> > You probably forgot to replace the subject with Josh's proposal.
> >
> > > module_put() is currently never called in klp_complete_transition() when
> > > klp_force is set. As a result, we might keep the reference count even when
> > > klp_enable_patch() fails and klp_cancel_transition() is called.
> >
> > Correct.
> >
> > > This might make an assumption that a module might get blocked in some
> > > strange init state. Fortunately, it is not the case. The reference count
> > > is ignored when mod->init fails and erroneous modules are always removed.
> >
> > I do not understand the paragraph and its connection to the problem (and I don't
> > remember if I understood it previously or not and forgot to mention it).
>
> It was one example of the confusion. I wonder if the following text
> is more clear:
>
> One might wonder if the reference could block the module in
> MODULE_STATE_COMING or MODULE_STATE_GOING infinitely.
> Fortunately, it is not the case. The reference count is
> ignored when mod->init fails and erroneous modules are
> always removed.
>
> Or I could remove the paragraph as you suggested below.

I think Joe's proposal would suffice. s/make an assumption/give the
impression/. It confused me.

Thanks,
Miroslav