Re: [PATCH] livepatch: Fix leak on klp_init_patch_early failure path

From: Petr Mladek
Date: Wed Dec 15 2021 - 03:20:07 EST


On Tue 2021-12-14 16:50:15, Greg Kroah-Hartman wrote:
>
> kobject_init() does allocate things internally, where does it say it
> does not? What is trying to be "fixed" here?

Could you please show where things are allocated in kobject_init()?
I do not see it in the code!

It looks to me like a cargo cult claim to me.

Documentation/core-api/kobject.rst says:

Once you registered your kobject via kobject_add(), you must never use
kfree() to free it directly. The only safe way is to use kobject_put().

kobject_add() makes perfect sense because it copies the name, takes
reference to the parent, etc.

kobject_init() just initializes the structure members and nothing else.

Best Regards,
Petr