libbpf: support sockopt hooks
Make libbpf aware of new sockopt hooks so it can derive prog type and hook point from the section names. Cc: Andrii Nakryiko <andriin@fb.com> Cc: Martin Lau <kafai@fb.com> Signed-off-by: Stanislav Fomichev <sdf@google.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org>
This commit is contained in:
parent
aa6ab6471e
commit
4cdbfb59c4
2 changed files with 6 additions and 0 deletions
|
@ -2646,6 +2646,7 @@ static bool bpf_prog_type__needs_kver(enum bpf_prog_type type)
|
||||||
case BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE:
|
case BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE:
|
||||||
case BPF_PROG_TYPE_PERF_EVENT:
|
case BPF_PROG_TYPE_PERF_EVENT:
|
||||||
case BPF_PROG_TYPE_CGROUP_SYSCTL:
|
case BPF_PROG_TYPE_CGROUP_SYSCTL:
|
||||||
|
case BPF_PROG_TYPE_CGROUP_SOCKOPT:
|
||||||
return false;
|
return false;
|
||||||
case BPF_PROG_TYPE_KPROBE:
|
case BPF_PROG_TYPE_KPROBE:
|
||||||
default:
|
default:
|
||||||
|
@ -3604,6 +3605,10 @@ static const struct {
|
||||||
BPF_CGROUP_UDP6_RECVMSG),
|
BPF_CGROUP_UDP6_RECVMSG),
|
||||||
BPF_EAPROG_SEC("cgroup/sysctl", BPF_PROG_TYPE_CGROUP_SYSCTL,
|
BPF_EAPROG_SEC("cgroup/sysctl", BPF_PROG_TYPE_CGROUP_SYSCTL,
|
||||||
BPF_CGROUP_SYSCTL),
|
BPF_CGROUP_SYSCTL),
|
||||||
|
BPF_EAPROG_SEC("cgroup/getsockopt", BPF_PROG_TYPE_CGROUP_SOCKOPT,
|
||||||
|
BPF_CGROUP_GETSOCKOPT),
|
||||||
|
BPF_EAPROG_SEC("cgroup/setsockopt", BPF_PROG_TYPE_CGROUP_SOCKOPT,
|
||||||
|
BPF_CGROUP_SETSOCKOPT),
|
||||||
};
|
};
|
||||||
|
|
||||||
#undef BPF_PROG_SEC_IMPL
|
#undef BPF_PROG_SEC_IMPL
|
||||||
|
|
|
@ -101,6 +101,7 @@ probe_load(enum bpf_prog_type prog_type, const struct bpf_insn *insns,
|
||||||
case BPF_PROG_TYPE_SK_REUSEPORT:
|
case BPF_PROG_TYPE_SK_REUSEPORT:
|
||||||
case BPF_PROG_TYPE_FLOW_DISSECTOR:
|
case BPF_PROG_TYPE_FLOW_DISSECTOR:
|
||||||
case BPF_PROG_TYPE_CGROUP_SYSCTL:
|
case BPF_PROG_TYPE_CGROUP_SYSCTL:
|
||||||
|
case BPF_PROG_TYPE_CGROUP_SOCKOPT:
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue