On Tue, Apr 30, 2019 at 01:00:05PM +0200, Miroslav Benes wrote: > On Tue, 30 Apr 2019, Tobin C. Harding wrote: > > > The correct cleanup function after a call to kobject_init_and_add() has > > succeeded is kobject_del() _not_ kobject_put(). kobject_del() calls > > kobject_put(). > > > > Use correct cleanup function when removing a kobject. > > > > Signed-off-by: Tobin C. Harding <tobin@xxxxxxxxxx> > > --- > > kernel/livepatch/core.c | 8 +++----- > > 1 file changed, 3 insertions(+), 5 deletions(-) > > > > diff --git a/kernel/livepatch/core.c b/kernel/livepatch/core.c > > index 98a7bec41faa..4cce6bb6e073 100644 > > --- a/kernel/livepatch/core.c > > +++ b/kernel/livepatch/core.c > > @@ -589,9 +589,8 @@ static void __klp_free_funcs(struct klp_object *obj, bool nops_only) > > > > list_del(&func->node); > > > > - /* Might be called from klp_init_patch() error path. */ > > Could you leave the comment as is? If I am not mistaken, it is still > valid. func->kobj_added check is here exactly because the function may be > called as mentioned. Will put it back in for you on v2 thanks, Tobin.