/hg/icedtea6-hg: Remove upstreamed HotSpot security patches.

andrew at icedtea.classpath.org andrew at icedtea.classpath.org
Sat Nov 23 09:27:39 PST 2013


changeset b692fa22a093 in /hg/icedtea6-hg
details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=b692fa22a093
author: Andrew John Hughes <gnu.andrew at redhat.com>
date: Sat Nov 23 17:26:52 2013 +0000

	Remove upstreamed HotSpot security patches.

	2012-11-23  Andrew John Hughes  <gnu.andrew at redhat.com>

		* patches/openjdk/8015614-update_build.patch,
		* patches/openjdk/8016256-finalization_final.patch,
		* patches/openjdk/8020943-memory_leak.patch,
		* patches/openjdk/8023457-tracing_mutex.patch,
		* patches/openjdk/8023478-hs_crash.patch,
		* patches/openjdk/8023683-enhance_class_file_parsing.patch,
		* patches/openjdk/8024914-swapped_usage.patch: Removed.
		* Makefile.am:
		(SECURITY_PATCHES): Remove upstreamed ones.


diffstat:

 ChangeLog                                                |  12 ++
 Makefile.am                                              |   9 +-
 patches/openjdk/8015614-update_build.patch               |  60 ------------
 patches/openjdk/8016256-finalization_final.patch         |  24 ----
 patches/openjdk/8020943-memory_leak.patch                |  32 ------
 patches/openjdk/8023457-tracing_mutex.patch              |  79 ----------------
 patches/openjdk/8023478-hs_crash.patch                   |  21 ----
 patches/openjdk/8023683-enhance_class_file_parsing.patch |  35 -------
 patches/openjdk/8024914-swapped_usage.patch              |  58 -----------
 9 files changed, 13 insertions(+), 317 deletions(-)

diffs (375 lines):

diff -r ab595f7ee5a8 -r b692fa22a093 ChangeLog
--- a/ChangeLog	Fri Nov 22 22:43:51 2013 +0000
+++ b/ChangeLog	Sat Nov 23 17:26:52 2013 +0000
@@ -1,3 +1,15 @@
+2012-11-23  Andrew John Hughes  <gnu.andrew at redhat.com>
+
+	* patches/openjdk/8015614-update_build.patch,
+	* patches/openjdk/8016256-finalization_final.patch,
+	* patches/openjdk/8020943-memory_leak.patch,
+	* patches/openjdk/8023457-tracing_mutex.patch,
+	* patches/openjdk/8023478-hs_crash.patch,
+	* patches/openjdk/8023683-enhance_class_file_parsing.patch,
+	* patches/openjdk/8024914-swapped_usage.patch: Removed.
+	* Makefile.am:
+	(SECURITY_PATCHES): Remove upstreamed ones.
+
 2012-11-22  Andrew John Hughes  <gnu.andrew at redhat.com>
 
 	* patches/openjdk/4075303-javap_update.patch,
diff -r ab595f7ee5a8 -r b692fa22a093 Makefile.am
--- a/Makefile.am	Fri Nov 22 22:43:51 2013 +0000
+++ b/Makefile.am	Sat Nov 23 17:26:52 2013 +0000
@@ -281,14 +281,7 @@
 DROP_PATCHES =
 
 SECURITY_PATCHES = \
-	patches/security/20120830/7182135-impossible_to_use_some_editors_directly.patch \
-	patches/openjdk/8024914-swapped_usage.patch \
-	patches/openjdk/8015614-update_build.patch \
-	patches/openjdk/8016256-finalization_final.patch \
-	patches/openjdk/8023683-enhance_class_file_parsing.patch \
-	patches/openjdk/8023457-tracing_mutex.patch \
-	patches/openjdk/8020943-memory_leak.patch \
-	patches/openjdk/8023478-hs_crash.patch
+	patches/security/20120830/7182135-impossible_to_use_some_editors_directly.patch
 
 SPECIAL_SECURITY_PATCH_1 = patches/security/20120214/7112642.patch
 SPECIAL_SECURITY_PATCH_2 = patches/security/20130618/8009071-improve_shape_handling.patch
diff -r ab595f7ee5a8 -r b692fa22a093 patches/openjdk/8015614-update_build.patch
--- a/patches/openjdk/8015614-update_build.patch	Fri Nov 22 22:43:51 2013 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,60 +0,0 @@
-# HG changeset patch
-# User erikj
-# Date 1381419677 -3600
-#      Thu Oct 10 16:41:17 2013 +0100
-# Node ID 918a90950fa69e5247e3af2599d2e7674d64e3d6
-# Parent  d0b5dc55e72cde11331399cbb960458b8f45ea4a
-8015614: Update build settings
-Reviewed-by: tbell, dholmes, ahgross
-
-diff -r d0b5dc55e72c -r 918a90950fa6 make/windows/makefiles/compile.make
---- openjdk/hotspot/make/windows/makefiles/compile.make	Tue Sep 17 12:04:11 2013 +0200
-+++ openjdk/hotspot/make/windows/makefiles/compile.make	Thu Oct 10 16:41:17 2013 +0100
-@@ -140,6 +140,7 @@
- !if "$(MSC_VER)" == "1600"
- COMPILER_NAME=VS2010
- !endif
-+SAFESEH_FLAG = /SAFESEH
- !endif
- 
- # By default, we do not want to use the debug version of the msvcrt.dll file
-@@ -170,6 +171,7 @@
- PRODUCT_OPT_OPTION   = /O2 /Oy-
- FASTDEBUG_OPT_OPTION = /O2 /Oy-
- DEBUG_OPT_OPTION     = /Od
-+SAFESEH_FLAG = /SAFESEH
- !endif
- 
- !if "$(COMPILER_NAME)" == "VS2005"
-@@ -186,6 +188,7 @@
- # Manifest Tool - used in VS2005 and later to adjust manifests stored
- # as resources inside build artifacts.
- MT=mt.exe
-+SAFESEH_FLAG = /SAFESEH
- !endif
- 
- !if "$(COMPILER_NAME)" == "VS2008"
-@@ -209,8 +212,8 @@
- # as resources inside build artifacts.
- MT=mt.exe
- !if "$(BUILDARCH)" == "i486"
--LD_FLAGS = /SAFESEH $(LD_FLAGS)
--!endif
-+LD_FLAGS = $(SAFESEH_FLAG) $(LD_FLAGS)
-+SAFESEH_FLAG = /SAFESEH
- !endif
- 
- # Compile for space above time.
-diff -r d0b5dc55e72c -r 918a90950fa6 make/windows/makefiles/sa.make
---- openjdk/hotspot/make/windows/makefiles/sa.make	Tue Sep 17 12:04:11 2013 +0200
-+++ openjdk/hotspot/make/windows/makefiles/sa.make	Thu Oct 10 16:41:17 2013 +0100
-@@ -107,6 +107,9 @@
- !if "$(ENABLE_FULL_DEBUG_SYMBOLS)" == "1"
- SA_LFLAGS = $(SA_LFLAGS) /map /debug
- !endif
-+!if "$(BUILDARCH)" == "i486"
-+SA_LFLAGS = $(SAFESEH_FLAG) $(SA_LFLAGS)
-+!endif
- 
- # Note that we do not keep sawindbj.obj around as it would then
- # get included in the dumpbin command in build_vm_def.sh
diff -r ab595f7ee5a8 -r b692fa22a093 patches/openjdk/8016256-finalization_final.patch
--- a/patches/openjdk/8016256-finalization_final.patch	Fri Nov 22 22:43:51 2013 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,24 +0,0 @@
-# HG changeset patch
-# User sgabdura
-# Date 1373869363 -14400
-#      Mon Jul 15 10:22:43 2013 +0400
-# Node ID bbd051c9089f61c65fe7d95487d47920164c7ee0
-# Parent  918a90950fa69e5247e3af2599d2e7674d64e3d6
-8016256: Make finalization final
-Reviewed-by: hseigel
-
-diff -r 918a90950fa6 -r bbd051c9089f src/share/vm/classfile/classFileParser.cpp
---- openjdk/hotspot/src/share/vm/classfile/classFileParser.cpp	Thu Oct 10 16:41:17 2013 +0100
-+++ openjdk/hotspot/src/share/vm/classfile/classFileParser.cpp	Mon Jul 15 10:22:43 2013 +0400
-@@ -3762,9 +3762,8 @@
-   for (int index = 0; index < num_methods; index++) {
-     methodOop m = (methodOop)methods->obj_at(index);
- 
--    // skip private, static and <init> methods
--    if ((!m->is_private()) &&
--        (!m->is_static()) &&
-+    // skip static and <init> methods
-+    if ((!m->is_static()) &&
-         (m->name() != vmSymbols::object_initializer_name())) {
- 
-       Symbol* name = m->name();
diff -r ab595f7ee5a8 -r b692fa22a093 patches/openjdk/8020943-memory_leak.patch
--- a/patches/openjdk/8020943-memory_leak.patch	Fri Nov 22 22:43:51 2013 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-# HG changeset patch
-# User kevinw
-# Date 1375442806 -3600
-#      Fri Aug 02 12:26:46 2013 +0100
-# Node ID 2660219948088d89dd3fc285e093dab2520349e5
-# Parent  4b3487aa553cca3fb7ecb74d284b9524d0bf5bf8
-8020943: Memory leak when GCNotifier uses create_from_platform_dependent_str()
-Reviewed-by: mgerdin, fparain, dcubed
-
-diff -r 4b3487aa553c -r 266021994808 src/share/vm/services/gcNotifier.cpp
---- openjdk/hotspot/src/share/vm/services/gcNotifier.cpp	Thu Oct 17 19:28:00 2013 +0100
-+++ openjdk/hotspot/src/share/vm/services/gcNotifier.cpp	Fri Aug 02 12:26:46 2013 +0100
-@@ -1,5 +1,5 @@
- /*
-- * Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
-+ * Copyright (c) 2011, 2013, 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
-@@ -211,9 +211,9 @@
-     NotificationMark nm(request);
-     Handle objGcInfo = createGcInfo(request->gcManager, request->gcStatInfo, THREAD);
- 
--    Handle objName = java_lang_String::create_from_platform_dependent_str(request->gcManager->name(), CHECK);
--    Handle objAction = java_lang_String::create_from_platform_dependent_str(request->gcAction, CHECK);
--    Handle objCause = java_lang_String::create_from_platform_dependent_str(request->gcCause, CHECK);
-+    Handle objName = java_lang_String::create_from_str(request->gcManager->name(), CHECK);
-+    Handle objAction = java_lang_String::create_from_str(request->gcAction, CHECK);
-+    Handle objCause = java_lang_String::create_from_str(request->gcCause, CHECK);
- 
-     klassOop k = Management::sun_management_GarbageCollectorImpl_klass(CHECK);
-     instanceKlassHandle gc_mbean_klass(THREAD, k);
diff -r ab595f7ee5a8 -r b692fa22a093 patches/openjdk/8023457-tracing_mutex.patch
--- a/patches/openjdk/8023457-tracing_mutex.patch	Fri Nov 22 22:43:51 2013 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,79 +0,0 @@
-# HG changeset patch
-# User mgronlun
-# Date 1382034480 -3600
-#      Thu Oct 17 19:28:00 2013 +0100
-# Node ID 4b3487aa553cca3fb7ecb74d284b9524d0bf5bf8
-# Parent  3091721c83780cbb9a946f05007651e0bd09490b
-8023457: Event based tracing framework needs a mutex for thread groups
-Reviewed-by: acorn, sla
-
-diff -r 3091721c8378 -r 4b3487aa553c src/share/vm/runtime/mutexLocker.cpp
---- openjdk/hotspot/src/share/vm/runtime/mutexLocker.cpp	Sat Aug 24 00:14:46 2013 -0700
-+++ openjdk/hotspot/src/share/vm/runtime/mutexLocker.cpp	Thu Oct 17 19:28:00 2013 +0100
-@@ -134,12 +134,16 @@
- 
- Mutex*   Management_lock              = NULL;
- Monitor* Service_lock                 = NULL;
--Mutex*   Stacktrace_lock              = NULL;
-+Monitor* PeriodicTask_lock            = NULL;
- 
-+#ifdef INCLUDE_TRACE
- Monitor* JfrQuery_lock                = NULL;
-+Mutex*   JfrStacktrace_lock           = NULL;
- Monitor* JfrMsg_lock                  = NULL;
- Mutex*   JfrBuffer_lock               = NULL;
- Mutex*   JfrStream_lock               = NULL;
-+Mutex*   JfrThreadGroups_lock         = NULL;
-+#endif
- 
- #define MAX_NUM_MUTEX 128
- static Monitor * _mutex_array[MAX_NUM_MUTEX];
-@@ -215,7 +219,6 @@
-   def(Patching_lock                , Mutex  , special,     true ); // used for safepointing and code patching.
-   def(ObjAllocPost_lock            , Monitor, special,     false);
-   def(Service_lock                 , Monitor, special,     true ); // used for service thread operations
--  def(Stacktrace_lock              , Mutex,   special,     true ); // used for JFR stacktrace database
-   def(JmethodIdCreation_lock       , Mutex  , leaf,        true ); // used for creating jmethodIDs.
- 
-   def(SystemDictionary_lock        , Monitor, leaf,        true ); // lookups done by VM thread
-@@ -279,12 +282,18 @@
-   def(Debug2_lock                  , Mutex  , nonleaf+4,   true );
-   def(Debug3_lock                  , Mutex  , nonleaf+4,   true );
-   def(ProfileVM_lock               , Monitor, nonleaf+4,   false); // used for profiling of the VMThread
--  def(CompileThread_lock           , Monitor, nonleaf+5,   false );
-+  def(CompileThread_lock           , Monitor, nonleaf+5,   false);
-+  def(PeriodicTask_lock            , Monitor, nonleaf+5,   true);
- 
-+#ifdef INCLUDE_TRACE
-   def(JfrQuery_lock                , Monitor, nonleaf,     true);  // JFR locks, keep these in consecutive order
-   def(JfrMsg_lock                  , Monitor, nonleaf+2,   true);
-   def(JfrBuffer_lock               , Mutex,   nonleaf+3,   true);
-+  def(JfrThreadGroups_lock         , Mutex,   nonleaf+1,   true);
-   def(JfrStream_lock               , Mutex,   nonleaf+4,   true);
-+  def(JfrStacktrace_lock           , Mutex,   special,     true );
-+#endif
-+
- }
- 
- GCMutexLocker::GCMutexLocker(Monitor * mutex) {
-diff -r 3091721c8378 -r 4b3487aa553c src/share/vm/runtime/mutexLocker.hpp
---- openjdk/hotspot/src/share/vm/runtime/mutexLocker.hpp	Sat Aug 24 00:14:46 2013 -0700
-+++ openjdk/hotspot/src/share/vm/runtime/mutexLocker.hpp	Thu Oct 17 19:28:00 2013 +0100
-@@ -136,12 +136,16 @@
- 
- extern Mutex*   Management_lock;                 // a lock used to serialize JVM management
- extern Monitor* Service_lock;                    // a lock used for service thread operation
--extern Mutex*   Stacktrace_lock;                 // used to guard access to the stacktrace table
-+extern Monitor* PeriodicTask_lock;               // protects the periodic task structure
- 
-+#ifdef INCLUDE_TRACE
-+extern Mutex*   JfrStacktrace_lock;              // used to guard access to the JFR stacktrace table
- extern Monitor* JfrQuery_lock;                   // protects JFR use
- extern Monitor* JfrMsg_lock;                     // protects JFR messaging
- extern Mutex*   JfrBuffer_lock;                  // protects JFR buffer operations
- extern Mutex*   JfrStream_lock;                  // protects JFR stream access
-+extern Mutex*   JfrThreadGroups_lock;            // protects JFR access to Thread Groups
-+#endif
- 
- // A MutexLocker provides mutual exclusion with respect to a given mutex
- // for the scope which contains the locker.  The lock is an OS lock, not
diff -r ab595f7ee5a8 -r b692fa22a093 patches/openjdk/8023478-hs_crash.patch
--- a/patches/openjdk/8023478-hs_crash.patch	Fri Nov 22 22:43:51 2013 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,21 +0,0 @@
-# HG changeset patch
-# User kevinw
-# Date 1379364550 25200
-#      Mon Sep 16 13:49:10 2013 -0700
-# Node ID e8d1979fe077eda9a94528c4b76dd4c5243d5dec
-# Parent  2660219948088d89dd3fc285e093dab2520349e5
-8023478: Test fails with HS crash in GCNotifier.
-Reviewed-by: sla
-
-diff -r 266021994808 -r e8d1979fe077 src/share/vm/services/gcNotifier.cpp
---- openjdk/hotspot/src/share/vm/services/gcNotifier.cpp	Fri Aug 02 12:26:46 2013 +0100
-+++ openjdk/hotspot/src/share/vm/services/gcNotifier.cpp	Mon Sep 16 13:49:10 2013 -0700
-@@ -209,7 +209,7 @@
-   GCNotificationRequest *request = getRequest();
-   if (request != NULL) {
-     NotificationMark nm(request);
--    Handle objGcInfo = createGcInfo(request->gcManager, request->gcStatInfo, THREAD);
-+    Handle objGcInfo = createGcInfo(request->gcManager, request->gcStatInfo, CHECK);
- 
-     Handle objName = java_lang_String::create_from_str(request->gcManager->name(), CHECK);
-     Handle objAction = java_lang_String::create_from_str(request->gcAction, CHECK);
diff -r ab595f7ee5a8 -r b692fa22a093 patches/openjdk/8023683-enhance_class_file_parsing.patch
--- a/patches/openjdk/8023683-enhance_class_file_parsing.patch	Fri Nov 22 22:43:51 2013 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,35 +0,0 @@
-# HG changeset patch
-# User iklam
-# Date 1377328486 25200
-#      Sat Aug 24 00:14:46 2013 -0700
-# Node ID 3091721c83780cbb9a946f05007651e0bd09490b
-# Parent  bbd051c9089f61c65fe7d95487d47920164c7ee0
-8023683: Enhance class file parsing
-Summary: Use the value returned by REALLOC_RESOURCE_ARRAY()
-Reviewed-by: coleenp, ahgross
-
-diff -r bbd051c9089f -r 3091721c8378 src/share/vm/classfile/classFileParser.cpp
---- openjdk/hotspot/src/share/vm/classfile/classFileParser.cpp	Mon Jul 15 10:22:43 2013 +0400
-+++ openjdk/hotspot/src/share/vm/classfile/classFileParser.cpp	Sat Aug 24 00:14:46 2013 -0700
-@@ -1821,8 +1821,8 @@
-           }
-           if (lvt_cnt == max_lvt_cnt) {
-             max_lvt_cnt <<= 1;
--            REALLOC_RESOURCE_ARRAY(u2, localvariable_table_length, lvt_cnt, max_lvt_cnt);
--            REALLOC_RESOURCE_ARRAY(u2*, localvariable_table_start, lvt_cnt, max_lvt_cnt);
-+            localvariable_table_length = REALLOC_RESOURCE_ARRAY(u2, localvariable_table_length, lvt_cnt, max_lvt_cnt);
-+            localvariable_table_start  = REALLOC_RESOURCE_ARRAY(u2*, localvariable_table_start, lvt_cnt, max_lvt_cnt);
-           }
-           localvariable_table_start[lvt_cnt] =
-             parse_localvariable_table(code_length,
-@@ -1851,8 +1851,8 @@
-           // Parse local variable type table
-           if (lvtt_cnt == max_lvtt_cnt) {
-             max_lvtt_cnt <<= 1;
--            REALLOC_RESOURCE_ARRAY(u2, localvariable_type_table_length, lvtt_cnt, max_lvtt_cnt);
--            REALLOC_RESOURCE_ARRAY(u2*, localvariable_type_table_start, lvtt_cnt, max_lvtt_cnt);
-+            localvariable_type_table_length = REALLOC_RESOURCE_ARRAY(u2, localvariable_type_table_length, lvtt_cnt, max_lvtt_cnt);
-+            localvariable_type_table_start  = REALLOC_RESOURCE_ARRAY(u2*, localvariable_type_table_start, lvtt_cnt, max_lvtt_cnt);
-           }
-           localvariable_type_table_start[lvtt_cnt] =
-             parse_localvariable_table(code_length,
diff -r ab595f7ee5a8 -r b692fa22a093 patches/openjdk/8024914-swapped_usage.patch
--- a/patches/openjdk/8024914-swapped_usage.patch	Fri Nov 22 22:43:51 2013 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,58 +0,0 @@
-# HG changeset patch
-# User tschatzl
-# Date 1379412251 -7200
-#      Tue Sep 17 12:04:11 2013 +0200
-# Node ID d0b5dc55e72cde11331399cbb960458b8f45ea4a
-# Parent  41d2a089e66401c8815af0c6b6efd2af9aeabe99
-8024914: Swapped usage of idx_t and bm_word_t types in bitMap.inline.hpp
-Summary: Incorrect usage of idx_t where bm_word_t is appropriate.
-Reviewed-by: tschatzl, brutisso
-Contributed-by: Dan Horak <dhorak at redhat.com>
-
-diff -r 41d2a089e664 -r d0b5dc55e72c src/share/vm/utilities/bitMap.inline.hpp
---- openjdk/hotspot/src/share/vm/utilities/bitMap.inline.hpp	Fri Oct 04 12:22:34 2013 -0400
-+++ openjdk/hotspot/src/share/vm/utilities/bitMap.inline.hpp	Tue Sep 17 12:04:11 2013 +0200
-@@ -52,16 +52,16 @@
- 
- inline bool BitMap::par_set_bit(idx_t bit) {
-   verify_index(bit);
--  volatile idx_t* const addr = word_addr(bit);
--  const idx_t mask = bit_mask(bit);
--  idx_t old_val = *addr;
-+  volatile bm_word_t* const addr = word_addr(bit);
-+  const bm_word_t mask = bit_mask(bit);
-+  bm_word_t old_val = *addr;
- 
-   do {
--    const idx_t new_val = old_val | mask;
-+    const bm_word_t new_val = old_val | mask;
-     if (new_val == old_val) {
-       return false;     // Someone else beat us to it.
-     }
--    const idx_t cur_val = (idx_t) Atomic::cmpxchg_ptr((void*) new_val,
-+    const bm_word_t cur_val = (bm_word_t) Atomic::cmpxchg_ptr((void*) new_val,
-                                                       (volatile void*) addr,
-                                                       (void*) old_val);
-     if (cur_val == old_val) {
-@@ -73,16 +73,16 @@
- 
- inline bool BitMap::par_clear_bit(idx_t bit) {
-   verify_index(bit);
--  volatile idx_t* const addr = word_addr(bit);
--  const idx_t mask = ~bit_mask(bit);
--  idx_t old_val = *addr;
-+  volatile bm_word_t* const addr = word_addr(bit);
-+  const bm_word_t mask = ~bit_mask(bit);
-+  bm_word_t old_val = *addr;
- 
-   do {
--    const idx_t new_val = old_val & mask;
-+    const bm_word_t new_val = old_val & mask;
-     if (new_val == old_val) {
-       return false;     // Someone else beat us to it.
-     }
--    const idx_t cur_val = (idx_t) Atomic::cmpxchg_ptr((void*) new_val,
-+    const bm_word_t cur_val = (bm_word_t) Atomic::cmpxchg_ptr((void*) new_val,
-                                                       (volatile void*) addr,
-                                                       (void*) old_val);
-     if (cur_val == old_val) {


More information about the distro-pkg-dev mailing list