diff mbox series

[bpf-next,v2,1/2] bpf: Check link_create parameter for multi_kprobe

Message ID 20250407035752.1108927-1-chen.dylane@linux.dev (mailing list archive)
State New
Headers show
Series [bpf-next,v2,1/2] bpf: Check link_create parameter for multi_kprobe | expand

Commit Message

Tao Chen April 7, 2025, 3:57 a.m. UTC
The flags in link_create no used in multi_kprobe, return -EINVAL if
they assigned, keep it same as other link attach apis. Perhaps due to
their usage habits, users may set the target_fd to -1. Therefore, no
check is carried out here, and it is kept consistent with the multi_uprobe.

Fixes: 0dcac2725406 ("bpf: Add multi kprobe link")
Signed-off-by: Tao Chen <chen.dylane@linux.dev>
---
 kernel/trace/bpf_trace.c | 6 ++++++
 1 file changed, 6 insertions(+)

Change list:
- v1 -> v2:
    - remove target_fd check suggested by jiri.
- v1:
    https://lore.kernel.org/bpf/20250331094745.336010-1-chen.dylane@linux.dev/

Comments

patchwork-bot+netdevbpf@kernel.org April 9, 2025, 11:40 p.m. UTC | #1
Hello:

This series was applied to bpf/bpf-next.git (master)
by Andrii Nakryiko <andrii@kernel.org>:

On Mon,  7 Apr 2025 11:57:51 +0800 you wrote:
> The flags in link_create no used in multi_kprobe, return -EINVAL if
> they assigned, keep it same as other link attach apis. Perhaps due to
> their usage habits, users may set the target_fd to -1. Therefore, no
> check is carried out here, and it is kept consistent with the multi_uprobe.
> 
> Fixes: 0dcac2725406 ("bpf: Add multi kprobe link")
> Signed-off-by: Tao Chen <chen.dylane@linux.dev>
> 
> [...]

Here is the summary with links:
  - [bpf-next,v2,1/2] bpf: Check link_create parameter for multi_kprobe
    https://git.kernel.org/bpf/bpf-next/c/243911982aa9
  - [bpf-next,v2,2/2] bpf: Check link_create parameter for multi_uprobe
    https://git.kernel.org/bpf/bpf-next/c/a76116f422c4

You are awesome, thank you!
diff mbox series

Patch

diff --git a/kernel/trace/bpf_trace.c b/kernel/trace/bpf_trace.c
index 13bef2462..5cd0af80f 100644
--- a/kernel/trace/bpf_trace.c
+++ b/kernel/trace/bpf_trace.c
@@ -2992,6 +2992,12 @@  int bpf_kprobe_multi_link_attach(const union bpf_attr *attr, struct bpf_prog *pr
 	/* no support for 32bit archs yet */
 	if (sizeof(u64) != sizeof(void *))
 		return -EOPNOTSUPP;
+	/*
+	 * Perhaps due to their usage habits, users may set the target_fd to -1. Therefore,
+	 * no check is carried out here, and it is kept consistent with the multi_uprobe.
+	 */
+	if (attr->link_create.flags)
+		return -EINVAL;
 
 	if (!is_kprobe_multi(prog))
 		return -EINVAL;