mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs.git
synced 2026-11-08 18:43:21 +01:00
perf test session topology: Fix test to skip the test in guest environment
The session topology test fails in powerpc pSeries platform. Test logs: <<>> Session topology : FAILED! <<>> This testcases tests cpu topology by checking the core_id and socket_id stored in perf_env from perf session. The data from perf session is compared with the cpu topology information from "/sys/devices/system/cpu/cpuX/topology" like core_id, physical_package_id. In case of virtual environment, detail like physical_package_id is restricted to be exposed. Hence physical_package_id is set to -1. The testcase fails on such platforms since socket_id can't be fetched from topology info. Skip the testcase in powerpc if physical_package_id returns -1. Reviewed-by: Kajol Jain <[email protected]> Signed-off-by: Athira Rajeev <[email protected]>--- Tested-by: Disha Goel <[email protected]> Acked-by: Ian Rogers <[email protected]> Cc: Jiri Olsa <[email protected]> Cc: Madhavan Srinivasan <[email protected]> Cc: Michael Ellerman <[email protected]> Cc: Nageswara R Sastry <[email protected]> Cc: [email protected] Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
This commit is contained in:
1 parent
f8ac1c4784
commit
cfd7092c31
1 file changed
+11
@@ -109,6 +109,17 @@ static int check_cpu_topology(char *path, struct perf_cpu_map *map)
|
||||
&& strncmp(session->header.env.arch, "aarch64", 7))
|
||||
return TEST_SKIP;
|
||||
|
||||
/*
|
||||
* In powerpc pSeries platform, not all the topology information
|
||||
* are exposed via sysfs. Due to restriction, detail like
|
||||
* physical_package_id will be set to -1. Hence skip this
|
||||
* test if physical_package_id returns -1 for cpu from perf_cpu_map.
|
||||
*/
|
||||
if (strncmp(session->header.env.arch, "powerpc", 7)) {
|
||||
if (cpu__get_socket_id(perf_cpu_map__cpu(map, 0)) == -1)
|
||||
return TEST_SKIP;
|
||||
}
|
||||
|
||||
TEST_ASSERT_VAL("Session header CPU map not set", session->header.env.cpu);
|
||||
|
||||
for (i = 0; i < session->header.env.nr_cpus_avail; i++) {
|
||||
|
||||
Reference in new issue
Block a user