United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: 6896084 VM does not reserve protected page below heap for compressed oops implicit null checks
6896084 : VM does not reserve protected page below heap for compressed oops implicit null checks

Details
Type:
Bug
Submit Date:
2009-10-28
Status:
Resolved
Updated Date:
2010-04-03
Project Name:
JDK
Resolved Date:
2010-01-14
Component:
hotspot
OS:
solaris
Sub-Component:
compiler
CPU:
x86
Priority:
P2
Resolution:
Fixed
Affected Versions:
hs17
Fixed Versions:
hs17

Related Reports
Backport:
Backport:
Backport:
Backport:
Relates:

Sub Tasks

Description
VM should reserve protected page below heap for compressed oops implicit null checks if zero base can not be used.
But the changes for 6791178: "zero based compressed oops " change code in such way that the page is not reserver
which could again cause 6716785: "implicit null checks not triggering with CompressedOops" problem.

                                    

Comments
EVALUATION

http://hg.openjdk.java.net/hsx/hsx16/master/rev/248f0ad25d21
                                     
2009-11-13
EVALUATION

http://hg.openjdk.java.net/hsx/hsx16/baseline/rev/248f0ad25d21
                                     
2009-11-06
PUBLIC COMMENTS

Problem:
VM should reserve protected page below heap for compressed oops
implicit null checks in compiled code (see 6716785).
After zero based compressed oops changes (6791178) the page is
not reserved because undefined narrow_oop_base (NULL by default)
is used in ReservedHeapSpace() to determine if the page is needed.

Solution:
Set narrow_oop_base and narrow_oop_use_implicit_null_checks
values according to compressed oops encoding mode in
Universe::preferred_heap_base() which is called before
ReservedHeapSpace() constructors.
                                     
2009-11-03
EVALUATION

http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot/rev/f334aec453a1
                                     
2009-10-30
EVALUATION

Still undefined Universe::narrow_oop_base() is used in ReservedHeapSpace() to determine if the protected page is needed.
                                     
2009-10-28



Hardware and Software, Engineered to Work Together