diff --git a/tools/perf/util/env.c b/tools/perf/util/env.c
index 34a363f2e71bc0a79838686dd893bbca0ec4142a..9494f9dc61ecac041e114ffa2553e287f416e30d 100644
--- a/tools/perf/util/env.c
+++ b/tools/perf/util/env.c
@@ -111,10 +111,12 @@ struct btf_node *perf_env__find_btf(struct perf_env *env, __u32 btf_id)
 		else if (btf_id > node->id)
 			n = n->rb_right;
 		else
-			break;
+			goto out;
 	}
+	node = NULL;
 
 	up_read(&env->bpf_progs.lock);
+out:
 	return node;
 }