8043086: Hotspot is expected to report OOM which is occurred String.intern(), but crashes in JDK8u5
authorpoonam
Wed, 28 May 2014 06:26:05 -0700
changeset 24827 82b56982e1af
parent 24826 ad80eed312fc
child 24829 ce92ec4efb1a
8043086: Hotspot is expected to report OOM which is occurred String.intern(), but crashes in JDK8u5 Summary: In case of allocation failure, restore the value of _chunk in Arena Reviewed-by: dholmes, dcubed
hotspot/src/share/vm/memory/allocation.cpp
--- a/hotspot/src/share/vm/memory/allocation.cpp	Tue May 27 21:58:23 2014 -0700
+++ b/hotspot/src/share/vm/memory/allocation.cpp	Wed May 28 06:26:05 2014 -0700
@@ -563,6 +563,7 @@
   _chunk = new (alloc_failmode, len) Chunk(len);
 
   if (_chunk == NULL) {
+    _chunk = k;                 // restore the previous value of _chunk
     return NULL;
   }
   if (k) k->set_next(_chunk);   // Append new chunk to end of linked list