* Perf test 7 fails on s390 (perf expr: Add metric literals for topology)
@ 2021-11-22 16:04 Thomas Richter
2021-11-22 16:48 ` Ian Rogers
0 siblings, 1 reply; 2+ messages in thread
From: Thomas Richter @ 2021-11-22 16:04 UTC (permalink / raw)
To: irogers, Arnaldo Carvalho de Melo, linux-perf-use.
Cc: Heiko Carstens, Sumanth Korikkar, Sven Schnelle, Vasily Gorbik
Commit fdf1e29b6118 ("perf expr: Add metric literals for topology.")
fails on s390:
# ./perf test -Fv 7
...
# FAILED tests/expr.c:173 #num_dies >= #num_packages
---- end ----
Simple expression parser: FAILED!
#
Investigating this issue leads to function:
static bool has_die_topology(void)
{
char filename[MAXPATHLEN];
struct utsname uts;
if (uname(&uts) < 0)
return false;
if (strncmp(uts.machine, "x86_64", 6))
return false;
....
}
which always return false on s390.
When I get this right, there is no build up of CPU topology with
dies on s390. The the #num_dies value in above test is always zero
and lower than the #num_packages field.
I am also suprised by the architecture specific code in a common
code function. Wouldn't it be better to define a weak function with
archticture specfic overrides?
Is this intended?
What is the recommended approach for other architectures?
Should I skip this test on s390?
Should s390 invent die for CPUs mapping?
Thanks a lot for your help and advice.
--
Thomas Richter, Dept 3303, IBM s390 Linux Development, Boeblingen, Germany
--
Vorsitzender des Aufsichtsrats: Gregor Pillen
Geschäftsführung: Dirk Wittkopp
Sitz der Gesellschaft: Böblingen / Registergericht: Amtsgericht Stuttgart, HRB 243294
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: Perf test 7 fails on s390 (perf expr: Add metric literals for topology)
2021-11-22 16:04 Perf test 7 fails on s390 (perf expr: Add metric literals for topology) Thomas Richter
@ 2021-11-22 16:48 ` Ian Rogers
0 siblings, 0 replies; 2+ messages in thread
From: Ian Rogers @ 2021-11-22 16:48 UTC (permalink / raw)
To: Thomas Richter
Cc: Arnaldo Carvalho de Melo, linux-perf-use.,
Heiko Carstens, Sumanth Korikkar, Sven Schnelle, Vasily Gorbik
On Mon, Nov 22, 2021 at 8:04 AM Thomas Richter <tmricht@linux.ibm.com> wrote:
>
> Commit fdf1e29b6118 ("perf expr: Add metric literals for topology.")
> fails on s390:
>
> # ./perf test -Fv 7
> ...
> # FAILED tests/expr.c:173 #num_dies >= #num_packages
> ---- end ----
> Simple expression parser: FAILED!
> #
> Investigating this issue leads to function:
> static bool has_die_topology(void)
> {
> char filename[MAXPATHLEN];
> struct utsname uts;
>
> if (uname(&uts) < 0)
> return false;
>
> if (strncmp(uts.machine, "x86_64", 6))
> return false;
>
> ....
> }
> which always return false on s390.
> When I get this right, there is no build up of CPU topology with
> dies on s390. The the #num_dies value in above test is always zero
> and lower than the #num_packages field.
>
> I am also suprised by the architecture specific code in a common
> code function. Wouldn't it be better to define a weak function with
> archticture specfic overrides?
>
> Is this intended?
> What is the recommended approach for other architectures?
> Should I skip this test on s390?
> Should s390 invent die for CPUs mapping?
>
> Thanks a lot for your help and advice.
Hi Thomas,
sorry to hear of this breakage and it was in no way intentional. The
'dies' ABI is supposedly stable:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/ABI/stable/sysfs-devices-system-cpu
hence having a test. It looks like something to dig into for s390. It
seems preferable to fix s390 than to add weak symbol workarounds.
Thanks,
Ian
> --
> Thomas Richter, Dept 3303, IBM s390 Linux Development, Boeblingen, Germany
> --
> Vorsitzender des Aufsichtsrats: Gregor Pillen
> Geschäftsführung: Dirk Wittkopp
> Sitz der Gesellschaft: Böblingen / Registergericht: Amtsgericht Stuttgart, HRB 243294
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2021-11-22 16:48 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-22 16:04 Perf test 7 fails on s390 (perf expr: Add metric literals for topology) Thomas Richter
2021-11-22 16:48 ` Ian Rogers
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.