JDK-6624782 : Bigapps crashes during CMS precleaning.
  • Type: Bug
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: 7
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2007-11-01
  • Updated: 2010-04-02
  • Resolved: 2008-04-23
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 6 Other
6u14Fixed hs12Fixed
Description
Crashes when running Toncat and Volano during bigapps testing.  Crashes occur
during cms precleaning.

The failures are both on 64bit VM's running on amd64 platforms.  The PC at the
time of the SEGV was pointing at the instruction

    __1cNobjArrayKlassUoop_oop_iterate_nv_m6MnDoop_pnbAMarkRefsIntoAndScanClosure_n0f 18 0c 36        prefetcht0 (%rsi,%rsi)

Comments
SUGGESTED FIX --- old/build/solaris/makefiles/amd64.make Tue Dec 4 14:20:20 2007 +++ new/build/solaris/makefiles/amd64.make Tue Dec 4 14:20:20 2007 @@ -45,6 +45,10 @@ OPT_CFLAGS/generateOptoStub.o = -xO2 OPT_CFLAGS/thread.o = -xO2 +# Work around for 6624782 +OPT_CFLAGS/instanceKlass.o = -Qoption ube -no_a2lf +OPT_CFLAGS/objArrayKlass.o = -Qoption ube -no_a2lf + else ifeq ("${Platform_compiler}", "gcc")
04-12-2007

EVALUATION This failure is being investigate under 6635416 as a possible SunStudio compiler bug.
29-11-2007

EVALUATION The tests run with -XX:PrefetchFieldsAhead=0 ran without failure for 2-3 weeks. New runs with the original flags only (no -XX:PrefetchFieldsAhead=0 and no -XX:DisableIntrinsic="_arraycopy") failed within 30 hours.
19-11-2007

EVALUATION The crashes point to a prefetchT0 instruction. That instruction should not throw any exceptions so it is unclear what is happening. I've ask that the tests be restarted with -XX:PrefetchFieldsAhead=0 which will eliminate the sue of the prefetch so should eliminate that confusion. I've also asked that a second bigapps run be done with -XX:DisableIntrinsic="_arraycopy" -XX:PrefetchFieldsAhead=0 to workaround a possible (but at this point unlikely) c2 bug. Both runs has been going for more than a week without reproducing the failure.
01-11-2007