RFR(L): Remove global safepoint code
    Doerr, Martin 
    martin.doerr at sap.com
       
    Thu Mar 19 13:41:45 UTC 2020
    
    
  
Hi Robbin,
thanks for removing the dead code and for taking care of all platforms.
PPC64 and s390 code looks good and seems to work fine on linux.
Only AIX doesn't build. I suggest to fix it like this:
diff -r efebab2fd109 src/hotspot/os/aix/safepointMechanism_aix.cpp
--- a/src/hotspot/os/aix/safepointMechanism_aix.cpp     Thu Mar 19 13:30:39 2020 +0100
+++ b/src/hotspot/os/aix/safepointMechanism_aix.cpp     Thu Mar 19 14:33:09 2020 +0100
@@ -101,7 +101,9 @@
   MemTracker::record_virtual_memory_reserve_and_commit(map_address, map_size, CALLER_PC, mtSafepoint);
   // Use same page for thread local handshakes without SIGTRAP
-  os::protect_memory(_polling_page, page_size, os::MEM_PROT_NONE);
+  if (!os::guard_memory((char*)_polling_page, page_size)) {
+    fatal("Could not protect polling page");
+  }
   intptr_t bad_page_val  = reinterpret_cast<intptr_t>(map_address),
            good_page_val = bad_page_val + os::vm_page_size();
   _poll_armed_value    = reinterpret_cast<void*>(bad_page_val  + poll_bit());
Thanks and best regards,
Martin
> -----Original Message-----
> From: hotspot-dev <hotspot-dev-bounces at openjdk.java.net> On Behalf Of
> Robbin Ehn
> Sent: Donnerstag, 19. März 2020 13:44
> To: hotspot-dev at openjdk.java.net
> Subject: RFR(L): Remove global safepoint code
> 
> Hi all, please build, test and review.
> 
> We removed (obsoleted) the flag ThreadLocalHandshakes in JDK 14.
> Any platform defining THREAD_LOCAL_POLL can only use per thread poll.
> Since all platforms now define THREAD_LOCAL_POLL the global poll code is
> dead.
> Let's remove it!
> 
> Issue: https://bugs.openjdk.java.net/browse/JDK-8220051
> Changeset:
> http://cr.openjdk.java.net/~rehn/8220051/v1/webrev/index.html
> 
> I have built fastdebug:
> linux-aarch64
> linux-arm32
> linux-ppc64le
> linux-s390x
> linux-x86_64-zero
> linux-x86_64 (no PCH)
> linux-x86_64 (slowdebug) (no PCH)
> linux-x86
> osx-x86_64
> windows-x86_64
> solaris-sparcv9
> 
> Tested t1-5:
> linux-x86_64
> osx-x86_64
> windows-x86_64
> solaris-sparcv9
> 
> Manually:
> linux-aarch64
> linux-x86_64-zero
> 
> Any extra help building and testing is appreciated, especially on arm32,
> ppc64le, s390x.
> 
> Thanks, Robbin
    
    
More information about the hotspot-dev
mailing list