Thread (74 messages) 74 messages, 9 authors, 2020-01-15

Re: [PATCH bpf-next v1 04/13] bpf: lsm: Allow btf_id based attachment for LSM hooks

From: Andrii Nakryiko <hidden>
Date: 2019-12-23 23:54:51
Also in: bpf, lkml

On Fri, Dec 20, 2019 at 7:42 AM KP Singh [off-list ref] wrote:
From: KP Singh <redacted>

Refactor and re-use most of the logic for BPF_PROG_TYPE_TRACING with a few
changes.

- The LSM hook BTF types are prefixed with "lsm_btf_"
btf_trace_ and btf_struct_ops all have btf_ first, let's keep this consistent.
- These types do not need the first (void *) pointer argument. The verifier
  only looks for this argument if prod->aux->attach_btf_trace is set.

Signed-off-by: KP Singh <redacted>
---
 kernel/bpf/syscall.c  |  1 +
 kernel/bpf/verifier.c | 83 ++++++++++++++++++++++++++++++++++++++++---
 2 files changed, 80 insertions(+), 4 deletions(-)
[...]
+
+       t = btf_type_by_id(btf_vmlinux, btf_id);
+       if (!t) {
+               verbose(env, "attach_btf_id %u is invalid\n", btf_id);
+               return -EINVAL;
+       }
+
+       tname = btf_name_by_offset(btf_vmlinux, t->name_off);
+       if (!tname) {
it can be empty, so better: !tname || !tname[0]
+               verbose(env, "attach_btf_id %u doesn't have a name\n", btf_id);
+               return -EINVAL;
+       }
+
[...]
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help