Skip to content

8355974: [CRaC] Move CPUFeatures verification to the parent process of JVM #227

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
Closed
Show file tree
Hide file tree
Changes from 20 commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
da419e6
zulu23-crac-cpufeaturessimplify-parent
Apr 18, 2025
370431c
8344647: Make java.se participate in the preview language feature `re…
lahodaj Dec 18, 2024
b30ecca
Merge branch 'crac-builderror' into crac-cpufeaturesparent
Apr 25, 2025
872d2c7
Merge branch 'crac-builderror-cpufeaturesparent' into crac-cpufeature…
Apr 25, 2025
1728ae1
compilation fixes
Apr 25, 2025
6cd96bd
CPUFeatures.sh comment path fix
Apr 25, 2025
ae0e59f
Fedora 41->42
Apr 25, 2025
1ed4bf3
Revert "Fedora 41->42"
Apr 25, 2025
7aac9a9
patch cleanup
Apr 26, 2025
2908afa
List Fedora 42 as a comment
Apr 27, 2025
a032297
Fix missing PATH_MAX on Windows
Apr 29, 2025
ab85add
Fix missing errno on OSX
Apr 29, 2025
e65c3c9
whitespace fixes
Apr 29, 2025
5b9a3f4
Removed unused declaration
Apr 29, 2025
f5b158f
Use the standardized prepare_user_data_api() style
Apr 29, 2025
9c7f39c
Rename userdata_name
Apr 29, 2025
0e06582
Print load_user_data error
Apr 29, 2025
734ed40
Use log error, not assert
Apr 29, 2025
057eb31
Rename cpufeatures_restore() to cpufeatures_check()
Apr 29, 2025
03200e6
Update required initialization comment
Apr 29, 2025
fffa5be
Coding style
Apr 30, 2025
35da864
Reformat glibc_not_using() caller
Apr 30, 2025
7e91228
Comment the testcase
Apr 30, 2025
b0c8012
Refactor the usage of prepare_user_data_api()
Apr 30, 2025
93996f1
Update copyright years
Apr 30, 2025
e2b427a
Fix GLIBC_TUNABLES rewriting
Apr 30, 2025
e42aaff
whitespace fixes
Apr 30, 2025
03ea8d2
Refactor cpufeatures_check/cpufeatures_load etc.
Apr 30, 2025
2e7e5ba
Fix whitespace
May 9, 2025
4de81c2
Make cpufeatures_userdata_name file local
May 11, 2025
719e756
Reimplement S3
May 11, 2025
5ce3343
More S3 fixes but it is untested and for 99.9% not yet working
May 12, 2025
ec0d4d4
Revert "More S3 fixes but it is untested and for 99.9% not yet working"
May 13, 2025
4f62f5f
Revert "Reimplement S3"
May 13, 2025
943adef
Remove S3 support
May 13, 2025
e0c32cf
Fix LoggingVMlogOpenTestNegative.java failing in Github CI
May 13, 2025
9d0f599
Eror log failed set_user_data
jankratochvil May 16, 2025
345fa97
vm_exit_during_initialization() is no longer needed
May 16, 2025
8d9a09e
CPUFeatures is not restore-settable so an assertion is enough
jankratochvil May 16, 2025
0111c5f
extensions[] performance optimization
May 16, 2025
d37b686
s/NULL/nullptr/
May 16, 2025
e097de4
Fix write to / close message
May 16, 2025
5a8495c
Move the user data functions block
May 16, 2025
76d3dd4
Wrap cpufeatures_store() by VM_Version::ignore_cpu_features()
May 16, 2025
876e092
Remove any mentioning of warp
May 19, 2025
f2e0280
cpu_features_binary_check: remove ResourceMark
May 19, 2025
b7c976c
Do not call prepare_user_data_api() if no user data is needed
May 19, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions src/hotspot/cpu/aarch64/vm_version_aarch64.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -64,8 +64,10 @@ class VM_Version : public Abstract_VM_Version {
public:
// Initialization
static void initialize();
static void crac_restore() {}
static void crac_restore_finalize() {}
struct CPUFeaturesBinary {};
static bool cpu_features_binary(CPUFeaturesBinary *data) { return false; }
static bool cpu_features_binary_check(const CPUFeaturesBinary *data) { return data == nullptr; }
static bool ignore_cpu_features() { return true; }
static void check_virtualizations();

static void print_platform_virtualization_info(outputStream*);
Expand Down
6 changes: 4 additions & 2 deletions src/hotspot/cpu/arm/vm_version_arm.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,10 @@ class VM_Version: public Abstract_VM_Version {
public:
static void initialize();
static bool is_initialized() { return _is_initialized; }
static void crac_restore() {}
static void crac_restore_finalize() {}
struct CPUFeaturesBinary {};
static bool cpu_features_binary(CPUFeaturesBinary *data) { return false; }
static bool cpu_features_binary_check(const CPUFeaturesBinary *data) { return data == nullptr; }
static bool ignore_cpu_features() { return true; }


protected:
Expand Down
6 changes: 4 additions & 2 deletions src/hotspot/cpu/ppc/vm_version_ppc.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -87,8 +87,10 @@ class VM_Version: public Abstract_VM_Version {
// Initialization
static void initialize();
static void check_virtualizations();
static void crac_restore() {}
static void crac_restore_finalize() {}
struct CPUFeaturesBinary {};
static bool cpu_features_binary(CPUFeaturesBinary *data) { return false; }
static bool cpu_features_binary_check(const CPUFeaturesBinary *data) { return data == nullptr; }
static bool ignore_cpu_features() { return true; }

// Override Abstract_VM_Version implementation
static void print_platform_virtualization_info(outputStream*);
Expand Down
6 changes: 4 additions & 2 deletions src/hotspot/cpu/riscv/vm_version_riscv.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -279,8 +279,10 @@ class VM_Version : public Abstract_VM_Version {
// Initialization
static void initialize();
static void initialize_cpu_information();
static void crac_restore() {}
static void crac_restore_finalize() {}
struct CPUFeaturesBinary {};
static bool cpu_features_binary(CPUFeaturesBinary *data) { return false; }
static bool cpu_features_binary_check(const CPUFeaturesBinary *data) { return data == nullptr; }
static bool ignore_cpu_features() { return true; }

constexpr static bool supports_stack_watermark_barrier() { return true; }

Expand Down
6 changes: 4 additions & 2 deletions src/hotspot/cpu/s390/vm_version_s390.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -414,8 +414,10 @@ class VM_Version: public Abstract_VM_Version {
static void initialize();
static void print_features();
static bool is_determine_features_test_running() { return _is_determine_features_test_running; }
static void crac_restore() {}
static void crac_restore_finalize() {}
struct CPUFeaturesBinary {};
static bool cpu_features_binary(CPUFeaturesBinary *data) { return false; }
static bool cpu_features_binary_check(const CPUFeaturesBinary *data) { return data == nullptr; }
static bool ignore_cpu_features() { return true; }

// Override Abstract_VM_Version implementation
static void print_platform_virtualization_info(outputStream*);
Expand Down
Loading