selftests/bpf: test_progs: remove global fail/success counts
[muen/linux.git] / tools / testing / selftests / bpf / test_progs.c
index e545dfb..e5892cb 100644 (file)
@@ -8,14 +8,12 @@
 
 /* defined in test_progs.h */
 struct test_env env;
-int error_cnt, pass_cnt;
 
 struct prog_test_def {
        const char *test_name;
        int test_num;
        void (*run_test)(void);
        bool force_log;
-       int pass_cnt;
        int error_cnt;
        int skip_cnt;
        bool tested;
@@ -24,7 +22,6 @@ struct prog_test_def {
        int subtest_num;
 
        /* store counts before subtest started */
-       int old_pass_cnt;
        int old_error_cnt;
 };
 
@@ -68,7 +65,7 @@ static void skip_account(void)
 void test__end_subtest()
 {
        struct prog_test_def *test = env.test;
-       int sub_error_cnt = error_cnt - test->old_error_cnt;
+       int sub_error_cnt = test->error_cnt - test->old_error_cnt;
 
        if (sub_error_cnt)
                env.fail_cnt++;
@@ -105,8 +102,7 @@ bool test__start_subtest(const char *name)
                return false;
 
        test->subtest_name = name;
-       env.test->old_pass_cnt = pass_cnt;
-       env.test->old_error_cnt = error_cnt;
+       env.test->old_error_cnt = env.test->error_cnt;
 
        return true;
 }
@@ -120,6 +116,11 @@ void test__skip(void)
        env.test->skip_cnt++;
 }
 
+void test__fail(void)
+{
+       env.test->error_cnt++;
+}
+
 struct ipv4_packet pkt_v4 = {
        .eth.h_proto = __bpf_constant_htons(ETH_P_IP),
        .iph.ihl = 5,
@@ -144,7 +145,7 @@ int bpf_find_map(const char *test, struct bpf_object *obj, const char *name)
        map = bpf_object__find_map_by_name(obj, name);
        if (!map) {
                printf("%s:FAIL:map '%s' not found\n", test, name);
-               error_cnt++;
+               test__fail();
                return -1;
        }
        return bpf_map__fd(map);
@@ -503,8 +504,6 @@ int main(int argc, char **argv)
        stdio_hijack();
        for (i = 0; i < prog_test_cnt; i++) {
                struct prog_test_def *test = &prog_test_defs[i];
-               int old_pass_cnt = pass_cnt;
-               int old_error_cnt = error_cnt;
 
                env.test = test;
                test->test_num = i + 1;
@@ -519,8 +518,6 @@ int main(int argc, char **argv)
                        test__end_subtest();
 
                test->tested = true;
-               test->pass_cnt = pass_cnt - old_pass_cnt;
-               test->error_cnt = error_cnt - old_error_cnt;
                if (test->error_cnt)
                        env.fail_cnt++;
                else
@@ -540,5 +537,5 @@ int main(int argc, char **argv)
        free(env.test_selector.num_set);
        free(env.subtest_selector.num_set);
 
-       return error_cnt ? EXIT_FAILURE : EXIT_SUCCESS;
+       return env.fail_cnt ? EXIT_FAILURE : EXIT_SUCCESS;
 }