Only output backtracking information in log level 2
authorChristy Lee <christylee@fb.com>
Thu, 16 Dec 2021 21:33:58 +0000 (13:33 -0800)
committerAlexei Starovoitov <ast@kernel.org>
Fri, 17 Dec 2021 03:44:34 +0000 (19:44 -0800)
Backtracking information is very verbose, don't print it in log
level 1 to improve readability.

Signed-off-by: Christy Lee <christylee@fb.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20211216213358.3374427-4-christylee@fb.com
kernel/bpf/verifier.c

index 72c4a6b..07d7d61 100644 (file)
@@ -2398,7 +2398,7 @@ static int backtrack_insn(struct bpf_verifier_env *env, int idx,
 
        if (insn->code == 0)
                return 0;
-       if (env->log.level & BPF_LOG_LEVEL) {
+       if (env->log.level & BPF_LOG_LEVEL2) {
                verbose(env, "regs=%x stack=%llx before ", *reg_mask, *stack_mask);
                verbose(env, "%d: ", idx);
                print_bpf_insn(&cbs, insn, env->allow_ptr_leaks);
@@ -2656,7 +2656,7 @@ static int __mark_chain_precision(struct bpf_verifier_env *env, int regno,
                DECLARE_BITMAP(mask, 64);
                u32 history = st->jmp_history_cnt;
 
-               if (env->log.level & BPF_LOG_LEVEL)
+               if (env->log.level & BPF_LOG_LEVEL2)
                        verbose(env, "last_idx %d first_idx %d\n", last_idx, first_idx);
                for (i = last_idx;;) {
                        if (skip_first) {
@@ -2743,7 +2743,7 @@ static int __mark_chain_precision(struct bpf_verifier_env *env, int regno,
                                new_marks = true;
                        reg->precise = true;
                }
-               if (env->log.level & BPF_LOG_LEVEL) {
+               if (env->log.level & BPF_LOG_LEVEL2) {
                        verbose(env, "parent %s regs=%x stack=%llx marks:",
                                new_marks ? "didn't have" : "already had",
                                reg_mask, stack_mask);