1 Star 0 Fork 82

xuyuchao/openjdk-1.8.0

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
8131600.patch 1.54 KB
一键复制 编辑 原始数据 按行查看 历史
From e546db5e9c81fabace719417cc77154e08355005 Mon Sep 17 00:00:00 2001
Date: Fri, 22 Jan 2021 11:37:38 +0800
Subject: Backport of JDK-8131600
Summary: JVM crashes when doing heapdump and handling a signal at a same time
LLT: none
Bug url: https://bugs.openjdk.java.net/browse/JDK-8131600
---
hotspot/src/share/vm/prims/jvmtiTagMap.cpp | 2 +-
hotspot/src/share/vm/services/heapDumper.cpp | 5 +++++
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/hotspot/src/share/vm/prims/jvmtiTagMap.cpp b/hotspot/src/share/vm/prims/jvmtiTagMap.cpp
index 224cd21ad..dc600d8ea 100644
--- a/hotspot/src/share/vm/prims/jvmtiTagMap.cpp
+++ b/hotspot/src/share/vm/prims/jvmtiTagMap.cpp
@@ -2829,7 +2829,7 @@ inline bool VM_HeapWalkOperation::iterate_over_class(oop java_class) {
if (klass->oop_is_instance()) {
InstanceKlass* ik = InstanceKlass::cast(klass);
- // ignore the class if it's has been initialized yet
+ // Ignore the class if it hasn't been initialized yet
if (!ik->is_linked()) {
return true;
}
diff --git a/hotspot/src/share/vm/services/heapDumper.cpp b/hotspot/src/share/vm/services/heapDumper.cpp
index e9fd8946a..24c0830c5 100644
--- a/hotspot/src/share/vm/services/heapDumper.cpp
+++ b/hotspot/src/share/vm/services/heapDumper.cpp
@@ -990,6 +990,11 @@ void DumperSupport::dump_class_and_array_classes(DumpWriter* writer, Klass* k) {
return;
}
+ // Ignore the class if it hasn't been initialized yet
+ if (!ik->is_linked()) {
+ return;
+ }
+
writer->write_u1(HPROF_GC_CLASS_DUMP);
// class ID
--
2.19.0
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/xuyuchao/openjdk-1.8.0.git
git@gitee.com:xuyuchao/openjdk-1.8.0.git
xuyuchao
openjdk-1.8.0
openjdk-1.8.0
master

搜索帮助