Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 29 May 2021 14:08:45 GMT
From:      Dimitry Andric <dim@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: d6f8398fa277 - main - java/openjdk12: fix build with clang 12
Message-ID:  <202105291408.14TE8jiH091101@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by dim (src committer):

URL: https://cgit.FreeBSD.org/ports/commit/?id=d6f8398fa2774d0e8eb6ab29b40b6ef0b16ba133

commit d6f8398fa2774d0e8eb6ab29b40b6ef0b16ba133
Author:     Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2021-05-15 14:45:59 +0000
Commit:     Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2021-05-29 14:08:18 +0000

    java/openjdk12: fix build with clang 12
    
    During an exp-run for llvm 12 (see bug 255570), it turned out that
    java/openjdk11 does not build with clang 12.0.0:
    
    Creating support/demos/image/jfc/J2Ddemo/J2Ddemo.jar
    /usr/local/bin/bash: line 5: 49140 Abort trap              (core dumped) /wrkdirs/usr/ports/java/openjdk12/work/openjdk-jdk12u-jdk-12.0.2-10-4/build/bsd-x86_64-server-release/support/interim-image/bin/java -XX:DumpLoadedClassList=/wrkdirs/usr/ports/java/openjdk12/work/openjdk-jdk12u-jdk-12.0.2-10-4/build/bsd-x86_64-server-release/support/link_opt/classlist.raw -Djava.lang.invoke.MethodHandle.TRACE_RESOLVE=true -cp /wrkdirs/usr/ports/java/openjdk12/work/openjdk-jdk12u-jdk-12.0.2-10-4/build/bsd-x86_64-server-release/support/classlist.jar build.tools.classlist.HelloClasslist > /dev/null 2>&1 > /wrkdirs/usr/ports/java/openjdk12/work/openjdk-jdk12u-jdk-12.0.2-10-4/build/bsd-x86_64-server-release/support/link_opt/default_jli_trace.txt
    gmake[4]: *** [GenerateLinkOptData.gmk:66: /wrkdirs/usr/ports/java/openjdk12/work/openjdk-jdk12u-jdk-12.0.2-10-4/build/bsd-x86_64-server-release/support/link_opt/classlist] Error 134
    
    This is due to missing backports of upstream commits:
    
    commit c484d8904285652246c3af212a4211b9a8955149
    Author: Thomas Stuefe <stuefe@openjdk.org>
    Date:   Tue Mar 16 05:49:01 2021 +0000
    
        8263557: Possible NULL dereference in Arena::destruct_contents()
    
        Reviewed-by: kbarrett, coleenp
    
    commit 34ae46e2bca691f989d4d84129baf545ff8a7469
    Author: Andrew Haley <aph@openjdk.org>
    Date:   Thu Mar 19 14:53:57 2020 +0000
    
        8241296: Segfault in JNIHandleBlock::oops_do()
    
        Reviewed-by: stefank
    
    Approved by:    maintainer timeout (2 weeks)
    PR:             255901
    MFH:            2021Q2
---
 java/openjdk12/files/patch-commit-34ae46e2bca | 23 +++++++++++++++++++++++
 java/openjdk12/files/patch-commit-c484d890428 | 23 +++++++++++++++++++++++
 2 files changed, 46 insertions(+)

diff --git a/java/openjdk12/files/patch-commit-34ae46e2bca b/java/openjdk12/files/patch-commit-34ae46e2bca
new file mode 100644
index 000000000000..3b70042a5487
--- /dev/null
+++ b/java/openjdk12/files/patch-commit-34ae46e2bca
@@ -0,0 +1,23 @@
+commit 34ae46e2bca691f989d4d84129baf545ff8a7469
+Author: Andrew Haley <aph@openjdk.org>
+Date:   Thu Mar 19 14:53:57 2020 +0000
+
+    8241296: Segfault in JNIHandleBlock::oops_do()
+    
+    Reviewed-by: stefank
+
+diff --git src/hotspot/share/runtime/thread.cpp src/hotspot/share/runtime/thread.cpp
+index b93e70a0353..b1571f2d594 100644
+--- src/hotspot/share/runtime/thread.cpp
++++ src/hotspot/share/runtime/thread.cpp
+@@ -888,7 +888,9 @@ bool Thread::claim_par_threads_do(uintx claim_token) {
+ }
+ 
+ void Thread::oops_do(OopClosure* f, CodeBlobClosure* cf) {
+-  active_handles()->oops_do(f);
++  if (active_handles() != NULL) {
++    active_handles()->oops_do(f);
++  }
+   // Do oop for ThreadShadow
+   f->do_oop((oop*)&_pending_exception);
+   handle_area()->oops_do(f);
diff --git a/java/openjdk12/files/patch-commit-c484d890428 b/java/openjdk12/files/patch-commit-c484d890428
new file mode 100644
index 000000000000..39ac7a7e8e46
--- /dev/null
+++ b/java/openjdk12/files/patch-commit-c484d890428
@@ -0,0 +1,23 @@
+commit c484d8904285652246c3af212a4211b9a8955149
+Author: Thomas Stuefe <stuefe@openjdk.org>
+Date:   Tue Mar 16 05:49:01 2021 +0000
+
+    8263557: Possible NULL dereference in Arena::destruct_contents()
+    
+    Reviewed-by: kbarrett, coleenp
+
+diff --git src/hotspot/share/memory/arena.cpp src/hotspot/share/memory/arena.cpp
+index 8388f68c359..16059bed9be 100644
+--- src/hotspot/share/memory/arena.cpp
++++ src/hotspot/share/memory/arena.cpp
+@@ -310,7 +310,9 @@ void Arena::destruct_contents() {
+   // reset size before chop to avoid a rare racing condition
+   // that can have total arena memory exceed total chunk memory
+   set_size_in_bytes(0);
+-  _first->chop();
++  if (_first != NULL) {
++    _first->chop();
++  }
+   reset();
+ }
+ 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202105291408.14TE8jiH091101>