mirror of
https://github.com/brain-hackers/linux-brain.git
synced 2024-06-09 23:36:23 +09:00
livepatch: Nullify obj->mod in klp_module_coming()'s error path
[ Upstream commit 4ff96fb52c
]
klp_module_coming() is called for every module appearing in the system.
It sets obj->mod to a patched module for klp_object obj. Unfortunately
it leaves it set even if an error happens later in the function and the
patched module is not allowed to be loaded.
klp_is_object_loaded() uses obj->mod variable and could currently give a
wrong return value. The bug is probably harmless as of now.
Signed-off-by: Miroslav Benes <mbenes@suse.cz>
Reviewed-by: Petr Mladek <pmladek@suse.com>
Acked-by: Josh Poimboeuf <jpoimboe@redhat.com>
Signed-off-by: Petr Mladek <pmladek@suse.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
78a1138672
commit
0f0ced702d
|
@ -1027,6 +1027,7 @@ int klp_module_coming(struct module *mod)
|
|||
pr_warn("patch '%s' failed for module '%s', refusing to load module '%s'\n",
|
||||
patch->mod->name, obj->mod->name, obj->mod->name);
|
||||
mod->klp_alive = false;
|
||||
obj->mod = NULL;
|
||||
klp_cleanup_module_patches_limited(mod, patch);
|
||||
mutex_unlock(&klp_mutex);
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user