removed upstreamed patch568 8187577-pr3578.patch
This commit is contained in:
parent
1b2b62a758
commit
7a12b3bf71
@ -1,59 +0,0 @@
|
||||
# HG changeset patch
|
||||
# User poonam
|
||||
# Date 1525279722 -3600
|
||||
# Wed May 02 17:48:42 2018 +0100
|
||||
# Node ID ffd5260fe5adcb26f87a14f1aaaf3e1a075d712a
|
||||
# Parent 5460c427c0dcb335f510cbc2ea1d76c6921b1aaa
|
||||
8187577, PR3578: JVM crash during gc doing concurrent marking
|
||||
Summary: Inform G1's SATB that a klass has been resurrected and it should not be unloaded
|
||||
Reviewed-by: coleenp, tschatzl, kbarrett
|
||||
|
||||
diff --git openjdk.orig/hotspot/src/share/vm/prims/jvmtiGetLoadedClasses.cpp openjdk/hotspot/src/share/vm/prims/jvmtiGetLoadedClasses.cpp
|
||||
--- openjdk.orig/hotspot/src/share/vm/prims/jvmtiGetLoadedClasses.cpp
|
||||
+++ openjdk/hotspot/src/share/vm/prims/jvmtiGetLoadedClasses.cpp
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
+ * Copyright (c) 2003, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@@ -27,6 +27,9 @@
|
||||
#include "memory/universe.inline.hpp"
|
||||
#include "prims/jvmtiGetLoadedClasses.hpp"
|
||||
#include "runtime/thread.hpp"
|
||||
+#if INCLUDE_ALL_GCS
|
||||
+#include "gc_implementation/g1/g1SATBCardTableModRefBS.hpp"
|
||||
+#endif
|
||||
|
||||
|
||||
// The closure for GetLoadedClasses
|
||||
@@ -35,6 +38,20 @@
|
||||
Stack<jclass, mtInternal> _classStack;
|
||||
JvmtiEnv* _env;
|
||||
|
||||
+// Tell the GC to keep this klass alive
|
||||
+static void ensure_klass_alive(oop o) {
|
||||
+ // A klass that was previously considered dead can be looked up in the
|
||||
+ // CLD/SD, and its _java_mirror or _class_loader can be stored in a root
|
||||
+ // or a reachable object making it alive again. The SATB part of G1 needs
|
||||
+ // to get notified about this potential resurrection, otherwise the marking
|
||||
+ // might not find the object.
|
||||
+#if INCLUDE_ALL_GCS
|
||||
+ if (UseG1GC && o != NULL) {
|
||||
+ G1SATBCardTableModRefBS::enqueue(o);
|
||||
+ }
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
public:
|
||||
LoadedClassesClosure(JvmtiEnv* env) {
|
||||
_env = env;
|
||||
@@ -43,6 +60,7 @@
|
||||
void do_klass(Klass* k) {
|
||||
// Collect all jclasses
|
||||
_classStack.push((jclass) _env->jni_reference(k->java_mirror()));
|
||||
+ ensure_klass_alive(k->java_mirror());
|
||||
}
|
||||
|
||||
int extract(jclass* result_list) {
|
@ -1141,8 +1141,6 @@ Patch563: 8171000-pr3542-rh1402819.patch
|
||||
Patch564: 8197546-pr3542-rh1402819.patch
|
||||
# PR3559: Use ldrexd for atomic reads on ARMv7.
|
||||
Patch567: pr3559.patch
|
||||
# 8187577, PR3578: JVM crash during gc doing concurrent marking
|
||||
Patch568: 8187577-pr3578.patch
|
||||
# PR3591: Fix for bug 3533 doesn't add -mstackrealign to JDK code
|
||||
Patch571: pr3591.patch
|
||||
# 8184309, PR3596: Build warnings from GCC 7.1 on Fedora 26
|
||||
@ -1650,7 +1648,6 @@ popd
|
||||
# Shenandoah-only patches
|
||||
%if %{use_shenandoah_hotspot}
|
||||
%else
|
||||
%patch568
|
||||
%patch570
|
||||
%endif
|
||||
|
||||
@ -2301,6 +2298,7 @@ require "copy_jdk_configs.lua"
|
||||
- updated to u181
|
||||
- patches aligned according to rhel7 (full credit to gnu_andrew)
|
||||
- removed upstreamed patch104 pr3458-rh1540242-aarch64.patch
|
||||
- removed upstreamed patch568 8187577-pr3578.patch
|
||||
|
||||
* Tue Jul 17 2018 Jiri Vanek <jvanek@redhat.com> - 11:1.8.0.172-16.b11
|
||||
- added Recommends gtk2 for main package
|
||||
|
Loading…
Reference in New Issue
Block a user