Commit f5f16ae4 authored by Reinette Chatre's avatar Reinette Chatre Committed by Shuah Khan

selftests/resctrl: Ensure sibling CPU is not same as original CPU

The resctrl tests can accept a CPU on which the tests are run and use
default of CPU #1 if it is not provided. In the CAT test a "sibling CPU"
is determined that is from the same package where another thread will be
run.

The current algorithm with which a "sibling CPU" is determined does not
take the provided/default CPU into account and when that CPU is the
first CPU in a package then the "sibling CPU" will be selected to be the
same CPU since it starts by picking the first CPU from core_siblings_list.

Fix the "sibling CPU" selection by taking the provided/default CPU into
account and ensuring a sibling that is a different CPU is selected.
Tested-by: default avatarBabu Moger <babu.moger@amd.com>
Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
Signed-off-by: default avatarFenghua Yu <fenghua.yu@intel.com>
Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
parent 24286736
...@@ -268,7 +268,7 @@ int get_core_sibling(int cpu_no) ...@@ -268,7 +268,7 @@ int get_core_sibling(int cpu_no)
while (token) { while (token) {
sibling_cpu_no = atoi(token); sibling_cpu_no = atoi(token);
/* Skipping core 0 as we don't want to run test on core 0 */ /* Skipping core 0 as we don't want to run test on core 0 */
if (sibling_cpu_no != 0) if (sibling_cpu_no != 0 && sibling_cpu_no != cpu_no)
break; break;
token = strtok(NULL, "-,"); token = strtok(NULL, "-,");
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment