kprobes: Fix to check symbol prefixes correctly
BugLink: https://bugs.launchpad.net/bugs/2083656
[ Upstream commit 8c8acb8f26cbde665b233dd1b9bbcbb9b86822dc ]
Since str_has_prefix() takes the prefix as the 2nd argument and the string
as the first, is_cfi_preamble_symbol() always fails to check the prefix.
Fix the function parameter order so that it correctly check the prefix.
Link: https://lore.kernel.org/all/172260679559.362040.7360872132937227206.stgit@devnote2/
Fixes: de02f2ac5d ("kprobes: Prohibit probing on CFI preamble symbol")
Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Koichiro Den <koichiro.den@canonical.com>
Signed-off-by: Roxana Nicolescu <roxana.nicolescu@canonical.com>
This commit is contained in:
committed by
Mehmet Basaran
parent
8bcfe2bd32
commit
0f4c9e5c3a
+2
-2
@@ -1558,8 +1558,8 @@ static bool is_cfi_preamble_symbol(unsigned long addr)
|
||||
if (lookup_symbol_name(addr, symbuf))
|
||||
return false;
|
||||
|
||||
return str_has_prefix("__cfi_", symbuf) ||
|
||||
str_has_prefix("__pfx_", symbuf);
|
||||
return str_has_prefix(symbuf, "__cfi_") ||
|
||||
str_has_prefix(symbuf, "__pfx_");
|
||||
}
|
||||
|
||||
static int check_kprobe_address_safe(struct kprobe *p,
|
||||
|
||||
Reference in New Issue
Block a user