Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 225f58fb authored by Minfei Huang's avatar Minfei Huang Committed by Jiri Kosina
Browse files

livepatch: Improve error handling in klp_disable_func()



In case of func->state or func->old_addr not having expected values,
we'd rather bail out immediately from klp_disable_func().

This can't really happen with the current codebase, but fix this
anyway in the sake of robustness.

[jkosina@suse.com: reworded the changelog a bit]
Signed-off-by: default avatarMinfei Huang <mnfhuang@gmail.com>
Acked-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
Signed-off-by: default avatarJiri Kosina <jkosina@suse.com>
parent 0faef837
Loading
Loading
Loading
Loading
+4 −2
Original line number Original line Diff line number Diff line
@@ -348,8 +348,10 @@ static void klp_disable_func(struct klp_func *func)
{
{
	struct klp_ops *ops;
	struct klp_ops *ops;


	WARN_ON(func->state != KLP_ENABLED);
	if (WARN_ON(func->state != KLP_ENABLED))
	WARN_ON(!func->old_addr);
		return;
	if (WARN_ON(!func->old_addr))
		return;


	ops = klp_find_ops(func->old_addr);
	ops = klp_find_ops(func->old_addr);
	if (WARN_ON(!ops))
	if (WARN_ON(!ops))