Re: perf: python3 + tests attr.py failing

From: Jiri Olsa
Date: Mon Feb 04 2019 - 15:37:43 EST


On Mon, Feb 04, 2019 at 12:10:42PM -0300, Arnaldo Carvalho de Melo wrote:
> Noticed this now when building with PYTHON=python3, can you take a look?
> For now I'm reinstalling python2-devel and building with it, i.e.
> removing that PYTHON=python3 make command line variable.
>
> [root@quaco ~]# perf test -v perf_event_attr
> 16: Setup struct perf_event_attr :
> --- start ---
> test child forked, pid 23937
> File "/home/acme/libexec/perf-core/tests/attr.py", line 325
> except Unsup, obj:
> ^
> SyntaxError: invalid syntax
> test child finished with -1
> ---- end ----
> Setup struct perf_event_attr: FAILED!

hum, I built the same way like you 'make PYTHON=python3'
[root@krava perf]# ldd ./perf | grep python
libpython3.6m.so.1.0 => /lib64/libpython3.6m.so.1.0 (0x00007f4ca7cc4000)

and get 'Ok result'

[root@krava perf]# ./perf test attr
16: Setup struct perf_event_attr : Ok
48: Synthesize attr update : Ok


[root@krava perf]# python3 --version
Python 3.6.8
[root@krava perf]# rpm -qa | grep python3-devel
python3-devel-3.6.8-1.fc28.x86_64

which Fedora are you on 29? I'm on 28

jirka

> [root@quaco ~]# find
>
> Reverting back to building with python2-devel makes it work:
>
> make O=/tmp/build/perf -C tools/perf install-bin
>
> [acme@quaco perf]$ ldd ~/bin/perf | grep python
> libpython2.7.so.1.0 => /lib64/libpython2.7.so.1.0 (0x00007fe283792000)
> [acme@quaco perf]$
>
> [root@quaco ~]# perf test perf_event_attr
> 16: Setup struct perf_event_attr : Ok
> [root@quaco ~]#
>
> - Arnaldo