perf tools power9 JSON files build breakage on ubuntu 18.04 cross build

From: Arnaldo Carvalho de Melo
Date: Thu Mar 23 2023 - 09:11:42 EST


Exception processing pmu-events/arch/powerpc/power9/other.json
Traceback (most recent call last):
File "pmu-events/jevents.py", line 997, in <module>
main()
File "pmu-events/jevents.py", line 979, in main
ftw(arch_path, [], preprocess_one_file)
File "pmu-events/jevents.py", line 935, in ftw
ftw(item.path, parents + [item.name], action)
File "pmu-events/jevents.py", line 933, in ftw
action(parents, item)
File "pmu-events/jevents.py", line 514, in preprocess_one_file
for event in read_json_events(item.path, topic):
File "pmu-events/jevents.py", line 388, in read_json_events
events = json.load(open(path), object_hook=JsonEvent)
File "/usr/lib/python3.6/json/__init__.py", line 296, in load
return loads(fp.read(),
File "/usr/lib/python3.6/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc2 in position 55090: ordinal not in range(128)
CC /tmp/build/perf/tests/expr.o
pmu-events/Build:35: recipe for target '/tmp/build/perf/pmu-events/pmu-events.c' failed
make[3]: *** [/tmp/build/perf/pmu-events/pmu-events.c] Error 1
make[3]: *** Deleting file '/tmp/build/perf/pmu-events/pmu-events.c'
Makefile.perf:679: recipe for target '/tmp/build/perf/pmu-events/pmu-events-in.o' failed
make[2]: *** [/tmp/build/perf/pmu-events/pmu-events-in.o] Error 2
make[2]: *** Waiting for unfinished jobs....


Now jevents is an opt-out feature so I'm noticing these problems.

A similar fix for s390 was accepted today:


https://lore.kernel.org/r/20230323122532.2305847-1-tmricht@xxxxxxxxxxxxx
https://lore.kernel.org/r/ZBwkl77/I31AQk12@osiris
--

- Arnaldo