2020-11-26 16:49:17

by Florent Revest

[permalink] [raw]
Subject: [PATCH bpf-next v3 3/6] bpf: Expose bpf_sk_storage_* to iterator programs

Iterators are currently used to expose kernel information to userspace
over fast procfs-like files but iterators could also be used to
manipulate local storage. For example, the task_file iterator could be
used to initialize a socket local storage with associations between
processes and sockets or to selectively delete local storage values.

Signed-off-by: Florent Revest <[email protected]>
Acked-by: Martin KaFai Lau <[email protected]>
---
net/core/bpf_sk_storage.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/net/core/bpf_sk_storage.c b/net/core/bpf_sk_storage.c
index a32037daa933..4edd033e899c 100644
--- a/net/core/bpf_sk_storage.c
+++ b/net/core/bpf_sk_storage.c
@@ -394,6 +394,7 @@ static bool bpf_sk_storage_tracing_allowed(const struct bpf_prog *prog)
* use the bpf_sk_storage_(get|delete) helper.
*/
switch (prog->expected_attach_type) {
+ case BPF_TRACE_ITER:
case BPF_TRACE_RAW_TP:
/* bpf_sk_storage has no trace point */
return true;
--
2.29.2.454.gaff20da3a2-goog


2020-11-27 08:46:09

by KP Singh

[permalink] [raw]
Subject: Re: [PATCH bpf-next v3 3/6] bpf: Expose bpf_sk_storage_* to iterator programs

On Thu, Nov 26, 2020 at 5:45 PM Florent Revest <[email protected]> wrote:
>
> Iterators are currently used to expose kernel information to userspace
> over fast procfs-like files but iterators could also be used to
> manipulate local storage. For example, the task_file iterator could be
> used to initialize a socket local storage with associations between
> processes and sockets or to selectively delete local storage values.
>
> Signed-off-by: Florent Revest <[email protected]>
> Acked-by: Martin KaFai Lau <[email protected]>

Acked-by: KP Singh <[email protected]>