RFR: 8360164: AOT cache creation crashes in ~ThreadTotalCPUTimeClosure() [v3]

Ioi Lam iklam at openjdk.org
Fri Jun 27 16:19:18 UTC 2025


> `java -XX:AOTMode=create` calls `vm_exit(0)` to terminate the JVM (see [this e-mail thread](https://mail.openjdk.org/pipermail/hotspot-runtime-dev/2024-August/072122.html) for the reason for doing so). However, at this point, the JVM has executed quite a lot of Java code and there are many threads in the JVM that would require a proper shutdown. See [comments by @kimbarrett](https://bugs.openjdk.org/browse/JDK-8360164?focusedId=14792754&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14792754) for a detailed analysis.
> 
> This fix calls `JVM_Halt(0)` instead of `vm_exit(0)` so that the proper shutdown code is executed.

Ioi Lam has updated the pull request incrementally with one additional commit since the last revision:

  Use vm_direct_exit instead, as at this point we have not finished Threads::create_vm() yet, so we may not have done all the initialization to be able to call before_exit()

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/26008/files
  - new: https://git.openjdk.org/jdk/pull/26008/files/e0e5e308..f8222e38

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=26008&range=02
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=26008&range=01-02

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

PR: https://git.openjdk.org/jdk/pull/26008


More information about the hotspot-runtime-dev mailing list