United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: JDK-6588045 Pack: java.io.IOException: pop token out of range
JDK-6588045 : Pack: java.io.IOException: pop token out of range

Details
Type:
Bug
Submit Date:
2007-08-01
Status:
Closed
Updated Date:
2011-03-09
Project Name:
JDK
Resolved Date:
2011-03-08
Component:
hotspot
OS:
solaris,windows_2003,solaris_nevada
Sub-Component:
compiler
CPU:
x86
Priority:
P2
Resolution:
Fixed
Affected Versions:
6u3,6u10,7
Fixed Versions:
hs11 (b08)

Related Reports
Backport:
Backport:
Backport:
Duplicate:

Sub Tasks

Description
I/O exception occurs on amd- solaris 10/ solaris 11 machines during the unpacking operation using 6u3-b02. It works fine with previous 6u2-GA b05. The issue doesn't seem to occur on windows-x86 and sparc-solaris.


java.io.IOException: pop token out of range
	at com.sun.java.util.jar.pack.NativeUnpack.start(Native Method)
	at com.sun.java.util.jar.pack.NativeUnpack.run(NativeUnpack.java:168)
	at com.sun.java.util.jar.pack.NativeUnpack.run(NativeUnpack.java:217)
	at com.sun.java.util.jar.pack.UnpackerImpl.unpack(UnpackerImpl.java:104)
	at com.sun.java.util.jar.pack.UnpackerImpl.unpack(UnpackerImpl.java:127)
	at PackCycle.executePackCycle(PackCycle.java:366)
	at PackCycle.CompletePackCycle(PackCycle.java:171)
	at PackCycle.main(PackCycle.java:581)
java.lang.RuntimeException
	at PackCycle.executePackCycle(PackCycle.java:408)
	at PackCycle.CompletePackCycle(PackCycle.java:171)
	at PackCycle.main(PackCycle.java:581)


Defect Configuration:
--------------------
amd- solaris 10, solaris 11
jdk 6u3-b02


Test cases:
----------

From SQE deployment Pack testsuite
[http://sqeweb.sfbay/deployment1/deployment_mustang_int_ws/deployment/src/Pack/Functionality/]

Pack/Functionality/PACK_EFFORT/PACK_EFFORT_6	
Pack/Functionality/PACK_EFFORT/PACK_EFFORT_8
Pack/Functionality/PACK_SEGMENT_LIMIT/PACK_SEGMENT_LIMIT_values	
Pack/Functionality/PACK_SEGMENT_LIMIT/PACK_SEGMENT_LIMIT_sizes
Pack/Functionality/PACK_PASS_FILE
Pack/Data/JDK_Jars	
Pack/Performance/Pack_Performance


* 6u3-b03 detailed test run log on amd-solaris 10 can be found at:

http://sqeweb.sfbay/st2/deployment/results/6u3/b02/pack/sunfire003-sol10-amd-pack/Standalone_deployment_Pack_2007_07_30_19_36_51
* jdk 6u3-b02/ solaris 11- x86:
  ----------------------------

The following test cases failed the same way: ( java.io.IOException: pop token out of range)

Pack/Functionality/PACK_EFFORT/PACK_EFFORT_6
Pack/Functionality/PACK_SEGMENT_LIMIT/PACK_SEGMENT_LIMIT_values
Pack/Functionality/PACK_SEGMENT_LIMIT/PACK_SEGMENT_LIMIT_sizes
Pack/Data/JDK_Jars	
Pack/Performance/Pack_Performanc
Pack/Functionality/PACK_EFFORT/PACK_EFFORT_6
Pack/Functionality/PACK_SEGMENT_LIMIT/PACK_SEGMENT_LIMIT_values
Pack/Functionality/PACK_SEGMENT_LIMIT/PACK_SEGMENT_LIMIT_sizes
Pack/Data/JDK_Jars
Pack/Performance/Pack_Performance

                                    

Comments
WORK AROUND

use the client compiler with -client.
                                     
2007-08-07
EVALUATION

The problems seems to be with server compiler wrt. loop expansion. See comments for
details, reassigning to the c2 team for further analysis.
                                     
2007-08-14
WORK AROUND

Use the -XX:-UseSuperWord flag with the server compiler.
                                     
2007-09-08
EVALUATION

This is a bug in the superword vectorization which was exposed by the fix for bug 6544668. This fix enabled the UseSuperWord flag by default.  It occurs in previous builds if this flag is explicitly turned on.
                                     
2007-09-08
EVALUATION

This was a bug in the superword optimization.  It was not correctly
checking that a pair of loads for the source of the data were adjacent
in memory.  The test case in the bug report was a loop copying consecutive
elements of a long array, casting each element to int and storing it in an int
array.

The fix was to add a check that the loads were adjacent.  To reduce
the chance of other regressions caused by this new optimization, I have turned
off the UseSuperWord flag by default as part of the fix for this bug in 6u4.
It will be enabled by the AgressiveOpts flag.
                                     
2007-09-26
SUGGESTED FIX

PRT webrev:

http://prt-web.sfbay.sun.com/net/prt-archiver.sfbay/data/archived_workspaces/main/c2_baseline/2007/20071002104230.rasbold.jdk7_bugs/workspace/webrevs/webrev-2007.10.02/index.html
                                     
2007-10-02



Hardware and Software, Engineered to Work Together