RFR: 8267920: Create separate Events buffer for VMOperations [v2]

Stefan Karlsson stefank at openjdk.java.net
Fri May 28 18:17:21 UTC 2021


> The Events classes collect events in a circular buffer that gets dumped into the hs_err files. There are different sections to sort out different types of events. See:
> 
>   // A log for internal exception related messages, like internal
>   // throws and implicit exceptions.
>   static ExceptionsEventLog* _exceptions;
> 
>   // Deoptization related messages
>   static StringEventLog* _deopt_messages;
> 
>   // Redefinition related messages
>   static StringEventLog* _redefinitions;
> 
>   // Class unloading events
>   static UnloadingEventLog* _class_unloading;
> 
> There's also a buffer for non-categorized events:
> 
>   // A log for generic messages that aren't well categorized.
>   static StringEventLog* _messages;
> 
> I propose that we create a separate buffer for VMOperations. This will make it easier to debug GC related bugs.
> 
> With the proposed patch, the hs_err files will now have a section that looks like this.
> 
> VM Operations (20 events):
> Event: 0,186 Executing VM operation: HandshakeAllThreads
> Event: 0,186 Executing VM operation: HandshakeAllThreads done
> Event: 0,230 Executing VM operation: ZMarkStart
> Event: 0,230 Executing VM operation: ZMarkStart done
> Event: 0,232 Executing VM operation: HandshakeAllThreads
> Event: 0,232 Executing VM operation: HandshakeAllThreads done
> Event: 0,232 Executing VM operation: HandshakeAllThreads
> Event: 0,232 Executing VM operation: HandshakeAllThreads done
> Event: 0,232 Executing VM operation: HandshakeAllThreads
> Event: 0,233 Executing VM operation: HandshakeAllThreads done
> Event: 0,233 Executing VM operation: ZMarkEnd
> Event: 0,233 Executing VM operation: ZMarkEnd done
> Event: 0,234 Executing VM operation: HandshakeAllThreads
> Event: 0,234 Executing VM operation: HandshakeAllThreads done
> Event: 0,234 Executing VM operation: ZVerify
> Event: 0,234 Executing VM operation: ZVerify done
> Event: 0,234 Executing VM operation: CleanClassLoaderDataMetaspaces
> Event: 0,234 Executing VM operation: CleanClassLoaderDataMetaspaces done
> Event: 0,235 Executing VM operation: ZRelocateStart
> Event: 0,235 Executing VM operation: ZRelocateStart done

Stefan Karlsson has updated the pull request incrementally with one additional commit since the last revision:

  Review coleenp

-------------

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/4243/files
  - new: https://git.openjdk.java.net/jdk/pull/4243/files/668d5fdb..1d22bd02

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=4243&range=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=4243&range=00-01

  Stats: 2 lines in 1 file changed: 2 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4243.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4243/head:pull/4243

PR: https://git.openjdk.java.net/jdk/pull/4243


More information about the hotspot-dev mailing list