diff --git a/DependencyContext-mark_dependent_nmethods-crash-in-Dynamic-cds-mode.patch b/DependencyContext-mark_dependent_nmethods-crash-in-Dynamic-cds-mode.patch new file mode 100644 index 0000000000000000000000000000000000000000..f34fe0a56027b49ca78a8b2e83a94e460ce55578 --- /dev/null +++ b/DependencyContext-mark_dependent_nmethods-crash-in-Dynamic-cds-mode.patch @@ -0,0 +1,30 @@ +DependencyContext::mark_dependent_nmethods crash in Dynamic cds mode + +--- + hotspot/src/share/vm/oops/instanceKlass.cpp | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/hotspot/src/share/vm/oops/instanceKlass.cpp b/hotspot/src/share/vm/oops/instanceKlass.cpp +index df44e5319..833cf9afe 100644 +--- a/hotspot/src/share/vm/oops/instanceKlass.cpp ++++ b/hotspot/src/share/vm/oops/instanceKlass.cpp +@@ -2462,8 +2462,6 @@ void InstanceKlass::remove_unshareable_info() { + + constants()->remove_unshareable_info(); + +- assert(_dep_context == DependencyContext::EMPTY, "dependency context is not shareable"); +- + for (int i = 0; i < methods()->length(); i++) { + Method* m = methods()->at(i); + m->remove_unshareable_info(); +@@ -2487,6 +2485,7 @@ void InstanceKlass::remove_unshareable_info() { + // do array classes also. + array_klasses_do(remove_unshareable_in_class); + // These are not allocated from metaspace. They are safe to set to NULL. ++ _dep_context = DependencyContext::EMPTY; + _member_names = NULL; + _osr_nmethods_head = NULL; + _init_thread = NULL; +-- +2.22.0 + diff --git a/openjdk-1.8.0.spec b/openjdk-1.8.0.spec index 6a970e740d299604640759f98420abcf99aa0059..807e592159211189b89d950c59ae6b4463da3de1 100644 --- a/openjdk-1.8.0.spec +++ b/openjdk-1.8.0.spec @@ -936,7 +936,7 @@ Provides: java-%{javaver}-%{origin}-accessibility%{?1} = %{epoch}:%{version}-%{r Name: java-%{javaver}-%{origin} Version: %{javaver}.%{updatever}.%{buildver} -Release: 0 +Release: 2 # java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons # and this change was brought into RHEL-4. java-1.5.0-ibm packages # also included the epoch in their virtual provides. This created a @@ -1320,6 +1320,7 @@ Patch428: 8223486-split-if-update_uses-accesses-stale-idom-dat.patch #412 Patch429: 8256488-Use-ldpq-stpq-instead-of-ld4-st4-for-small-c.patch +Patch430: DependencyContext-mark_dependent_nmethods-crash-in-Dynamic-cds-mode.patch ############################################# # # Upstreamable patches @@ -1962,6 +1963,7 @@ pushd %{top_level_dir_name} %patch427 -p1 %patch428 -p1 %patch429 -p1 +%patch430 -p1 %endif %ifarch loongarch64 @@ -2620,6 +2622,9 @@ cjc.mainProgram(arg) %endif %changelog +* Tue May 7 2024 kuenking111 -1:1.8.0.412-b08.2 +- add DependencyContext-mark_dependent_nmethods-crash-in-Dynamic-cds-mode.patch + * Sun Apr 28 2024 Autistic_boyya -1:1.8.0.412-b08.1 - add 8256488-Use-ldpq-stpq-instead-of-ld4-st4-for-small-c.patch