adoptium / STF

The System Test Framework for executing https://github.com/adoptium/aqa-systemtest
Apache License 2.0
8 stars 35 forks source link

os.arch riscv64 not recognised #110

Closed lumpfish closed 3 years ago

lumpfish commented 3 years ago

STF uses the value riscv to determine it is running on a risc-v machine.

The openj9 implementation sets os.arch to riscv and so that value has been used directly until now,

The bisheng (Huawei) build sets os.arch to riscv64 which causes tests to fail because riscv64 is not recognised.

The failure output is:

STF 09:46:16.664 - ==================   G E N E R A T I O N   ==================
STF 09:46:16.700 - Checking JVM: /home/lumpfish/bishengjdk/jdk-11.0.10+9/
STF 09:46:16.707 - Starting process to generate scripts: /home/lumpfish/bishengjdk/jdk-11.0.10+9//bin/java  -Dlog4j.skipJansi=true -Djava.system.class.loader=net.adoptopenjdk.stf.runner.StfClassLoader -classpath /home/lumpfish/git/openjdk-tests/system/openjdk-systemtest/../../systemtest_prereqs/log4j/log4j-api.jar:/home/lumpfish/git/openjdk-tests/system/openjdk-systemtest/../../systemtest_prereqs/log4j/log4j-core.jar:/home/lumpfish/git/openjdk-tests/system/stf/stf.core/scripts/../bin net.adoptopenjdk.stf.runner.StfRunner -properties "/tmp/stf/20210401-094616-ClassloadingLoadTest/stf_parameters.properties, , /home/lumpfish/git/openjdk-tests/system/stf/stf.core/config/stf.properties" -testDir "/tmp/stf/20210401-094616-ClassloadingLoadTest"
GEN stderr Exception in thread "main" java.lang.IllegalStateException: Failed to get property: stf-bin-dir
GEN stderr      at net.adoptopenjdk.stf.environment.properties.OrderedProperties.getProperty(OrderedProperties.java:105)
GEN stderr      at net.adoptopenjdk.stf.environment.properties.LayeredProperties.resolveProperty(LayeredProperties.java:112)
GEN stderr      at net.adoptopenjdk.stf.environment.properties.LayeredProperties.getProperty(LayeredProperties.java:73)
GEN stderr      at net.adoptopenjdk.stf.environment.StfEnvironmentCore.getProperty(StfEnvironmentCore.java:352)
GEN stderr      at net.adoptopenjdk.stf.environment.StfEnvironmentCore.createDirectoryRefFromProperty(StfEnvironmentCore.java:290)
GEN stderr      at net.adoptopenjdk.stf.environment.StfEnvironmentCore.<init>(StfEnvironmentCore.java:85)
GEN stderr      at net.adoptopenjdk.stf.runner.StfRunner.executeTest(StfRunner.java:140)
GEN stderr      at net.adoptopenjdk.stf.runner.StfRunner.main(StfRunner.java:69)
GEN stderr Caused by: net.adoptopenjdk.stf.StfException: Unknown architecture value: 'riscv64'. Expected one of '390|x86|ppc|x86|arm|riscv'
GEN stderr      at net.adoptopenjdk.stf.environment.PlatformFinder.<init>(PlatformFinder.java:91)
GEN stderr      at net.adoptopenjdk.stf.environment.PlatformFinder.getInstance(PlatformFinder.java:70)
GEN stderr      at net.adoptopenjdk.stf.environment.PlatformFinder.getPlatform(PlatformFinder.java:147)
GEN stderr      at net.adoptopenjdk.stf.environment.properties.OrderedProperties.getProperty(OrderedProperties.java:95)
GEN stderr      ... 7 more
Generation failed

The fix is to recognise os.arch=riscv64 as well as os.arch=riscv .