Lines Matching +full:k +full:- +full:to +full:- +full:j

1 // SPDX-License-Identifier: GPL-2.0
11 #include "../perf-sys.h"
13 /* hw: cycles,instructions sw: context-switch, uncore: [arch dependent] */
14 static int types[] = {0, 1, -1};
42 * initialized with disabled set to 1 and any child events are in event_open()
43 * initialized with disabled set to 0. Despite disabled being 0, in event_open()
47 attr.disabled = group_fd == -1 ? 1 : 0; in event_open()
49 return sys_perf_event_open(&attr, -1, 0, group_fd, 0); in event_open()
59 if (!strcmp(uncore_pmus[i].name, pmu->name)) { in setup_uncore_event()
60 pr_debug("Using %s for uncore pmu event\n", pmu->name); in setup_uncore_event()
61 types[2] = pmu->type; in setup_uncore_event()
71 fd = event_open(types[2], configs[2], -1); in setup_uncore_event()
73 return -1; in setup_uncore_event()
79 return -1; in setup_uncore_event()
82 static int run_test(int i, int j, int k) in run_test() argument
84 int erroneous = ((((1 << i) | (1 << j) | (1 << k)) & 5) == 5); in run_test()
87 group_fd = event_open(types[i], configs[i], -1); in run_test()
88 if (group_fd == -1) in run_test()
89 return -1; in run_test()
91 sibling_fd1 = event_open(types[j], configs[j], group_fd); in run_test()
92 if (sibling_fd1 == -1) { in run_test()
94 return erroneous ? 0 : -1; in run_test()
105 if (!i && !j && !k) in run_test()
106 sibling_fd2 = event_open(types[k], configs_hw[k], group_fd); in run_test()
108 sibling_fd2 = event_open(types[k], configs[k], group_fd); in run_test()
109 if (sibling_fd2 == -1) { in run_test()
112 return erroneous ? 0 : -1; in run_test()
118 return erroneous ? -1 : 0; in run_test()
123 int i, j, k; in test__event_groups() local
128 if (ret || types[2] == -1) in test__event_groups()
133 for (j = 0; j < 3; j++) { in test__event_groups()
134 for (k = 0; k < 3; k++) { in test__event_groups()
135 r = run_test(i, j, k); in test__event_groups()
143 if (!i && !j && !k) in test__event_groups()
145 types[i], configs[i], types[j], configs[j], in test__event_groups()
146 types[k], configs_hw[k], r ? "Fail" : "Pass"); in test__event_groups()
149 types[i], configs[i], types[j], configs[j], in test__event_groups()
150 types[k], configs[k], r ? "Fail" : "Pass"); in test__event_groups()