]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
bpf: guard bpf_get_current_cgroup_id() with CONFIG_CGROUPS
authorYonghong Song <yhs@fb.com>
Mon, 4 Jun 2018 15:53:41 +0000 (08:53 -0700)
committerDaniel Borkmann <daniel@iogearbox.net>
Mon, 4 Jun 2018 19:52:26 +0000 (21:52 +0200)
Commit bf6fa2c893c5 ("bpf: implement bpf_get_current_cgroup_id()
helper") introduced a new helper bpf_get_current_cgroup_id().
The helper has a dependency on CONFIG_CGROUPS.

When CONFIG_CGROUPS is not defined, using the helper will result
the following verifier error:
  kernel subsystem misconfigured func bpf_get_current_cgroup_id#80
which is hard for users to interpret.
Guarding the reference to bpf_get_current_cgroup_id_proto with
CONFIG_CGROUPS will result in below better message:
  unknown func bpf_get_current_cgroup_id#80

Fixes: bf6fa2c893c5 ("bpf: implement bpf_get_current_cgroup_id() helper")
Suggested-by: Daniel Borkmann <daniel@iogearbox.net>
Signed-off-by: Yonghong Song <yhs@fb.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
kernel/trace/bpf_trace.c

index e2ab5b7f29d25dc5661c892e082c86cbd1347885..0ae6829804bc8eb4df935c043efe4d49e254f406 100644 (file)
@@ -564,8 +564,10 @@ tracing_func_proto(enum bpf_func_id func_id, const struct bpf_prog *prog)
                return &bpf_get_prandom_u32_proto;
        case BPF_FUNC_probe_read_str:
                return &bpf_probe_read_str_proto;
+#ifdef CONFIG_CGROUPS
        case BPF_FUNC_get_current_cgroup_id:
                return &bpf_get_current_cgroup_id_proto;
+#endif
        default:
                return NULL;
        }