mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-12-28 16:56:26 +00:00
perf test expr: Fix system_tsc_freq for only x86
The refactoring of tool PMU events to have a PMU then adding the expr
literals to the tool PMU made it so that the literal system_tsc_freq
was only supported on x86. Update the test expectations to match -
namely the parsing is x86 specific and only yields a non-zero value on
Intel.
Fixes: 609aa2667f
("perf tool_pmu: Switch to standard pmu functions and json descriptions")
Reported-by: Athira Rajeev <atrajeev@linux.vnet.ibm.com>
Closes: https://lore.kernel.org/linux-perf-users/20241022140156.98854-1-atrajeev@linux.vnet.ibm.com/
Co-developed-by: Athira Rajeev <atrajeev@linux.vnet.ibm.com>
Tested-by: Namhyung Kim <namhyung@kernel.org>
Signed-off-by: Ian Rogers <irogers@google.com>
Cc: James Clark <james.clark@linaro.org>
Cc: akanksha@linux.ibm.com
Cc: hbathini@linux.ibm.com
Cc: kjain@linux.ibm.com
Cc: maddy@linux.ibm.com
Cc: disgoel@linux.vnet.ibm.com
Cc: linuxppc-dev@lists.ozlabs.org
Link: https://lore.kernel.org/r/20241205022305.158202-1-irogers@google.com
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
This commit is contained in:
parent
d4e17a322a
commit
a93a620c38
@ -75,14 +75,12 @@ static int test__expr(struct test_suite *t __maybe_unused, int subtest __maybe_u
|
||||
double val, num_cpus_online, num_cpus, num_cores, num_dies, num_packages;
|
||||
int ret;
|
||||
struct expr_parse_ctx *ctx;
|
||||
bool is_intel = false;
|
||||
char strcmp_cpuid_buf[256];
|
||||
struct perf_cpu cpu = {-1};
|
||||
char *cpuid = get_cpuid_allow_env_override(cpu);
|
||||
char *escaped_cpuid1, *escaped_cpuid2;
|
||||
|
||||
TEST_ASSERT_VAL("get_cpuid", cpuid);
|
||||
is_intel = strstr(cpuid, "Intel") != NULL;
|
||||
|
||||
TEST_ASSERT_EQUAL("ids_union", test_ids_union(), 0);
|
||||
|
||||
@ -245,12 +243,19 @@ static int test__expr(struct test_suite *t __maybe_unused, int subtest __maybe_u
|
||||
if (num_dies) // Some platforms do not have CPU die support, for example s390
|
||||
TEST_ASSERT_VAL("#num_dies >= #num_packages", num_dies >= num_packages);
|
||||
|
||||
TEST_ASSERT_VAL("#system_tsc_freq", expr__parse(&val, ctx, "#system_tsc_freq") == 0);
|
||||
if (is_intel)
|
||||
TEST_ASSERT_VAL("#system_tsc_freq > 0", val > 0);
|
||||
else
|
||||
TEST_ASSERT_VAL("#system_tsc_freq == 0", fpclassify(val) == FP_ZERO);
|
||||
|
||||
if (expr__parse(&val, ctx, "#system_tsc_freq") == 0) {
|
||||
bool is_intel = strstr(cpuid, "Intel") != NULL;
|
||||
|
||||
if (is_intel)
|
||||
TEST_ASSERT_VAL("#system_tsc_freq > 0", val > 0);
|
||||
else
|
||||
TEST_ASSERT_VAL("#system_tsc_freq == 0", fpclassify(val) == FP_ZERO);
|
||||
} else {
|
||||
#if defined(__i386__) || defined(__x86_64__)
|
||||
TEST_ASSERT_VAL("#system_tsc_freq unsupported", 0);
|
||||
#endif
|
||||
}
|
||||
/*
|
||||
* Source count returns the number of events aggregating in a leader
|
||||
* event including the leader. Check parsing yields an id.
|
||||
|
Loading…
Reference in New Issue
Block a user