On 6/8/26 19:27, Thomas Huth wrote:
On 08/06/2026 14.45, Thomas Huth wrote:
On 02/06/2026 08.48, Chinmay Rath wrote:
From: Nicholas Piggin <[email protected]>

Add some initial PMU testing.

- PMC5/6 tests
- PMAE / PMI test
- BHRB basic tests

Signed-off-by: Nicholas Piggin <[email protected]>
Signed-off-by: Chinmay Rath <[email protected]>
---
  lib/powerpc/asm/processor.h |   2 +
  lib/powerpc/asm/reg.h       |   9 +
  lib/powerpc/asm/setup.h     |   1 +
  lib/powerpc/setup.c         |  20 ++
  powerpc/Makefile.common     |   3 +-
  powerpc/pmu.c               | 567 ++++++++++++++++++++++++++++++++++++
  powerpc/unittests.cfg       |   3 +
  7 files changed, 604 insertions(+), 1 deletion(-)
  create mode 100644 powerpc/pmu.c

  Hi Chinmay,

the problem with Clang on Travis [*] still seems to persist:

  https://app.travis-ci.com/github/huth/kvm-unit-tests/jobs/639614142

Could you please have a look?

  Thanks,
   Thomas


[*] This already happened with Nicolas' last version:

  https://www.spinics.net/lists/kvm/msg351218.html

I managed to get access to a ppc64 machine. The error is:

/tmp/pmu-eab466.s: Assembler messages:
/tmp/pmu-eab466.s:1649: Error: unrecognized opcode: `ldat'
clang: error: assembler command failed with exit code 1 (use -v to see invocation)
make: *** [<builtin>: powerpc/pmu.o] Error 1

 HTH,
  Thomas
Hi Thomas,

Thanks for looking into this and providing the exact error message.

I was looking into this Travis CI job that you pointed to and noticed that the clang version being used was 14. I was wondering, would it be possible to use a newer version of clang for the job since LDAT is a legit PPC insn, that was introduced with Power 9, ISA version 3.0, way back a decade in 2016 ! So I was wondering if using a newer version of clang that recognizes the instruction would be a better approach.

I checked the .travis.yml file (config) for the job, which mentions :
|apt_packages: clang qemu-system-ppc|

Can we change it to something like :
|apt_packages: clang19 qemu-system-ppc |or (clang-19)  ?

In the same config s390x uses a specific version of clang that is 11 in similar manner.

However if you'd still prefer working around LDAT, I could try with LDARX instead, but I am unable to verify if clang-14 will recognize that since the oldest version of clang I could find in ppc64le repo was clang-15 which was able to work with LDAT as well. Hence, could you help me with providing the steps to use Travis-CI so I could verify ? (I had skipped doing the credit card payment while signing up, in case that's mandatory for Travis CI. Pardon me I'm new to it XD)

Thanks,
Chinmay


Reply via email to