diff options
author | Masami Hiramatsu (Google) | 2023-10-17 08:49:45 +0900 |
---|---|---|
committer | Greg Kroah-Hartman | 2023-10-25 12:03:12 +0200 |
commit | df2cc87f2c38eba1e0cf4607f8a29513c0a41aa3 (patch) | |
tree | d690addd02f8a58db69ae45811e476f25d35f76a /kernel/trace | |
parent | f177a579d2e870fa32aceaf13a0e1c540de2f9e2 (diff) |
fprobe: Fix to ensure the number of active retprobes is not zero
[ Upstream commit 700b2b439766e8aab8a7174991198497345bd411 ]
The number of active retprobes can be zero but it is not acceptable,
so return EINVAL error if detected.
Link: https://lore.kernel.org/all/169750018550.186853.11198884812017796410.stgit@devnote2/
Reported-by: wuqiang.matt <wuqiang.matt@bytedance.com>
Closes: https://lore.kernel.org/all/20231016222103.cb9f426edc60220eabd8aa6a@kernel.org/
Fixes: 5b0ab78998e3 ("fprobe: Add exit_handler support")
Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'kernel/trace')
-rw-r--r-- | kernel/trace/fprobe.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/trace/fprobe.c b/kernel/trace/fprobe.c index 441a37307921..f386d6bd8e0e 100644 --- a/kernel/trace/fprobe.c +++ b/kernel/trace/fprobe.c @@ -134,7 +134,7 @@ static int fprobe_init_rethook(struct fprobe *fp, int num) { int i, size; - if (num < 0) + if (num <= 0) return -EINVAL; if (!fp->exit_handler) { @@ -147,8 +147,8 @@ static int fprobe_init_rethook(struct fprobe *fp, int num) size = fp->nr_maxactive; else size = num * num_possible_cpus() * 2; - if (size < 0) - return -E2BIG; + if (size <= 0) + return -EINVAL; fp->rethook = rethook_alloc((void *)fp, fprobe_exit_handler); if (!fp->rethook) |