RFR: 8309258: RISC-V: Add riscv_hwprobe syscall
Robbin Ehn
rehn at openjdk.org
Tue Jun 13 10:13:05 UTC 2023
Hi, please consider.
Linux kernel 6.4 will come with the new syscall https://docs.kernel.org/riscv/hwprobe.html to determine CPU and features.
RV cpus features/capabilities can vastly differ and it is not feasible for users to manually enable the correct feature set.
Today the VM uses the ELF aux vector and cpuinfo to gather some information about CPU capabilities.
Currently features are track with a bit field, this is insufficient.
There are many capabilities and these can have values attached to them.
CPU features should also be possible to turn if we can determine vendor (hwprobe).
This patchs adds the syscall, uses the syscall in combination with the aux and cpuinfo to enable features by default.
If there is a vendor specific path it calls that in addition.
Then we build the feature string(and bit field) and update flags accordingly.
Tested t1 and hwprobe with:
https://lore.kernel.org/qemu-devel/7f8d733df6e9b6151e9efb843d55441348805e70.camel@rivosinc.com/
-------------
Commit messages:
- 8309258
Changes: https://git.openjdk.org/jdk/pull/14445/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=14445&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8309258
Stats: 565 lines in 5 files changed: 456 ins; 54 del; 55 mod
Patch: https://git.openjdk.org/jdk/pull/14445.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/14445/head:pull/14445
PR: https://git.openjdk.org/jdk/pull/14445
More information about the hotspot-dev
mailing list