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. Best Regards, Petr