diff --git a/kernel/bpf/verifier.c b/kernel/bpf/verifier.c index 5f3799dcba019d4b44be878ae9c783e67b27ee9c..ab5aa549766650cdbbe6e42345ef90895f7d3e3b 100644 --- a/kernel/bpf/verifier.c +++ b/kernel/bpf/verifier.c @@ -4474,6 +4474,10 @@ int bpf_check(struct bpf_prog **prog, union bpf_attr *attr) struct bpf_verifer_log *log; int ret = -EINVAL; + /* no program is valid */ + if (ARRAY_SIZE(bpf_verifier_ops) == 0) + return -EINVAL; + /* 'struct bpf_verifier_env' can be global, but since it's not small, * allocate/free it every time bpf_check() is called */