-
Type:
Bug
-
Resolution: Fixed
-
Priority:
P4
-
Affects Version/s: 23
-
Component/s: hotspot
-
b02
-
linux
| Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
|---|---|---|---|---|---|---|
| JDK-8374381 | 26.0.1 | David Briemann | P4 | Resolved | Fixed | master |
Running the VM with e.g.
java -XX:NonNMethodCodeHeapSize=1200K -X:+UseTransparentHugePages -version
will result in
uintx NonNMethodCodeHeapSize=0 is outside the allowed range [ 4096 ... 18446744073709551615 ]
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (jvmFlagAccess.cpp:70), pid=123765, tid=123768
# fatal error: FLAG_SET_ERGO cannot be used to set an invalid value for NonNMethodCodeHeapSize
#
This happens when the page size is larger than the code heap segment size. Then align_down will reduce the size value to 0 and continue to call FLAG_SET_ERGO with this invalid value.
The proposed solution is to set the non nmethod code heap size to the minimal possible size when validating the parameter.
java -XX:NonNMethodCodeHeapSize=1200K -X:+UseTransparentHugePages -version
will result in
uintx NonNMethodCodeHeapSize=0 is outside the allowed range [ 4096 ... 18446744073709551615 ]
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (jvmFlagAccess.cpp:70), pid=123765, tid=123768
# fatal error: FLAG_SET_ERGO cannot be used to set an invalid value for NonNMethodCodeHeapSize
#
This happens when the page size is larger than the code heap segment size. Then align_down will reduce the size value to 0 and continue to call FLAG_SET_ERGO with this invalid value.
The proposed solution is to set the non nmethod code heap size to the minimal possible size when validating the parameter.
- backported by
-
JDK-8374381 VM crashes on init when NonNMethodCodeHeapSize is set too small and UseTransparentHugePages is enabled
-
- Resolved
-
- relates to
-
JDK-8318817 Could not reserve enough space in CodeHeap 'profiled nmethods' (0K)
-
- Resolved
-
- links to
-
Commit(master)
openjdk/jdk26u/0cd8c8ef
-
Commit(master)
openjdk/jdk/8eaeb699
-
Review(master)
openjdk/jdk25u-dev/87
-
Review(master)
openjdk/jdk26u/2
-
Review(master)
openjdk/jdk/28658
(2 links to)