harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chris Elford (JIRA)" <j...@apache.org>
Subject [jira] Created: (HARMONY-3756) Failure running multiple instances of debug version of Harmony
Date Thu, 26 Apr 2007 00:05:15 GMT
Failure running multiple instances of debug version of Harmony
--------------------------------------------------------------

                 Key: HARMONY-3756
                 URL: https://issues.apache.org/jira/browse/HARMONY-3756
             Project: Harmony
          Issue Type: Bug
          Components: DRLVM
         Environment: Windows XP -- MSVC DEBUG build of harmony-hdk-r532358
            Reporter: Chris Elford
            Priority: Minor


Has anyone else seen issues running multiple instances debug builds of Harmony at the same
time?

public class Sleep { 
    public static void main(String[] arg) { 
      System.out.println("About to sleep for 60 secs");
      try {
        Thread.sleep(60*1000);
      } catch (Exception e) {
      }
      System.out.println("Slept for 60 secs");
    } 
} 

>From two different windows CMD windows run "C:\java\harmony-hdk-r532358\jdk\jre\bin\java.exe
Sleep"
The first one starts correctly but the second one gets an access violation in memset during
startup.

Executable search path is: 
ModLoad: 00400000 0040e000   C:\java\harmony-hdk-r532358\jdk\jre\bin\java.exe
ModLoad: 7c900000 7c9b0000   C:\WINNT\system32\ntdll.dll
ModLoad: 7c800000 7c8f4000   C:\WINNT\system32\kernel32.dll
ModLoad: 11100000 1111d000   C:\java\harmony-hdk-r532358\jdk\jre\bin\HYPRT.dll
ModLoad: 10000000 10425000   C:\java\harmony-hdk-r532358\jdk\jre\bin\HYTHR.dll
ModLoad: 71ab0000 71ac7000   C:\WINNT\system32\WS2_32.dll
ModLoad: 77c10000 77c68000   C:\WINNT\system32\msvcrt.dll
ModLoad: 71aa0000 71aa8000   C:\WINNT\system32\WS2HELP.dll
ModLoad: 77dd0000 77e6b000   C:\WINNT\system32\ADVAPI32.dll
ModLoad: 77e70000 77f01000   C:\WINNT\system32\RPCRT4.dll
ModLoad: 7c340000 7c396000   C:\java\harmony-hdk-r532358\jdk\jre\bin\MSVCR71.dll
ModLoad: 00510000 00ad5000   C:\java\harmony-hdk-r532358\jdk\jre\bin\default\harmonyvm.dll
ModLoad: 00370000 00383000   C:\java\harmony-hdk-r532358\jdk\jre\bin\default\zlib1.dll
ModLoad: 4a800000 4a8c8000   C:\java\harmony-hdk-r532358\jdk\jre\bin\icuuc34.dll
ModLoad: 4ad00000 4b570000   C:\java\harmony-hdk-r532358\jdk\jre\bin\icudt34.dll
ModLoad: 59a60000 59b01000   C:\WINNT\system32\dbghelp.dll
ModLoad: 77c00000 77c08000   C:\WINNT\system32\VERSION.dll
ModLoad: 74320000 7435d000   C:\WINNT\system32\ODBC32.dll
ModLoad: 5d090000 5d12a000   C:\WINNT\system32\COMCTL32.dll
ModLoad: 77f10000 77f57000   C:\WINNT\system32\GDI32.dll
ModLoad: 7e410000 7e4a1000   C:\WINNT\system32\USER32.dll
ModLoad: 7c9c0000 7d1d5000   C:\WINNT\system32\SHELL32.dll
ModLoad: 77f60000 77fd6000   C:\WINNT\system32\SHLWAPI.dll
ModLoad: 763b0000 763f9000   C:\WINNT\system32\comdlg32.dll
ModLoad: 76bf0000 76bfb000   C:\WINNT\system32\PSAPI.DLL
ModLoad: 769c0000 76a73000   C:\WINNT\system32\USERENV.dll
ModLoad: 71a50000 71a8f000   C:\WINNT\system32\MSWSOCK.dll
ModLoad: 76390000 763ad000   C:\WINNT\system32\IMM32.DLL
ModLoad: 629c0000 629c9000   C:\WINNT\system32\LPK.DLL
ModLoad: 74d90000 74dfb000   C:\WINNT\system32\USP10.dll
ModLoad: 773d0000 774d3000   C:\WINNT\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.2982_x-ww_ac3f9c03\comctl32.dll
ModLoad: 20000000 20017000   C:\WINNT\system32\odbcint.dll
ModLoad: 77fe0000 77ff1000   C:\WINNT\system32\Secur32.dll
ModLoad: 01300000 0136d000   C:\java\harmony-hdk-r532358\jdk\jre\bin\default\em.dll
ModLoad: 01380000 01967000   C:\java\harmony-hdk-r532358\jdk\jre\bin\default\jitrino.dll
ModLoad: 01980000 019b0000   C:\java\harmony-hdk-r532358\jdk\jre\bin\default\gc_gen.dll
ModLoad: 019b0000 01a37000   C:\WINNT\system32\MSVCR71D.dll
(11ac.1468): Access violation - code c0000005 (!!! second chance !!!)
eax=00000000 ebx=7ffdc000 ecx=0347c000 edx=00000000 esi=0013f884 edi=22e30000
eip=019c6085 esp=0013f7d0 ebp=0013f7ec iopl=0         nv up ei pl nz na pe nc
cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00000206
MSVCR71D!memset+0x45:
019c6085 f3ab            rep stos dword ptr es:[edi]  es:0023:22e30000=????????
0:000> k
ChildEBP RetAddr  
0013f7d0 01986de2 MSVCR71D!memset+0x45 [F:\VS70Builds\3077\vc\crtbld\crt\src\intel\memset.asm
@ 108]
0013f7ec 0198c2b8 gc_gen!fspace_initialize+0xb2 [c:\lab_drlbuild\combined_msvc_d\s0426\working_vm\vm\gc_gen\src\trace_forward\fspace.cpp
@ 50]
0013f804 0198b8be gc_gen!gc_nos_initialize+0x18 [c:\lab_drlbuild\combined_msvc_d\s0426\working_vm\vm\gc_gen\src\gen\gen.h
@ 125]
0013f864 0198a061 gc_gen!gc_gen_initialize+0x37e [c:\lab_drlbuild\combined_msvc_d\s0426\working_vm\vm\gc_gen\src\gen\gen.cpp
@ 196]
*** WARNING: Unable to verify checksum for C:\java\harmony-hdk-r532358\jdk\jre\bin\default\harmonyvm.dll
0013f87c 0063cc4d gc_gen!gc_init+0x91 [c:\lab_drlbuild\combined_msvc_d\s0426\working_vm\vm\gc_gen\src\common\gc_for_vm.cpp
@ 51]
0013f9d8 005a2fdf harmonyvm!vm_init1+0x30d [c:\lab_drlbuild\combined_msvc_d\s0426\working_vm\vm\vmcore\src\init\vm_init.cpp
@ 679]
*** WARNING: Unable to verify checksum for C:\java\harmony-hdk-r532358\jdk\jre\bin\java.exe
0013fa60 004021f0 harmonyvm!JNI_CreateJavaVM+0x1cf [c:\lab_drlbuild\combined_msvc_d\s0426\working_vm\vm\vmcore\src\jni\jni.cpp
@ 499]
0013faac 00401a91 java!invocation+0xb0 [c:\lab_drlbuild\combined_msvc_d\s0426\working_classlib\modules\luni\src\main\native\launcher\shared\main.c
@ 670]
0013fb78 004010c5 java!gpProtectedMain+0x771 [c:\lab_drlbuild\combined_msvc_d\s0426\working_classlib\modules\luni\src\main\native\launcher\shared\main.c
@ 393]
0013ff60 0040469d java!main+0xb5 [c:\lab_drlbuild\combined_msvc_d\s0426\working_classlib\modules\luni\src\main\native\launcher\shared\cmain.c
@ 147]

On a possibly related note, the crash happens right where a "redundant" load of gc_gen and
MSVCR71D happens in a single VM case.  I'm not sure why the same libraries are loaded multiple
times...  windbg log:
...
ModLoad: 01300000 0136d000   C:\java\harmony-hdk-r532358\jdk\jre\bin\default\em.dll
ModLoad: 01380000 01967000   C:\java\harmony-hdk-r532358\jdk\jre\bin\default\jitrino.dll
ModLoad: 01980000 019b0000   C:\java\harmony-hdk-r532358\jdk\jre\bin\default\gc_gen.dll
ModLoad: 019b0000 01a37000   C:\WINNT\system32\MSVCR71D.dll
ModLoad: 01980000 019b0000   C:\java\harmony-hdk-r532358\jdk\jre\bin\default\gc_gen.dll
ModLoad: 019b0000 01a37000   C:\WINNT\system32\MSVCR71D.dll
ModLoad: 13100000 13106000   C:\java\harmony-hdk-r532358\jdk\jre\bin\hysig.dll
ModLoad: 11700000 11718000   C:\java\harmony-hdk-r532358\jdk\jre\bin\hyzlib.dll
...

The workaround for this issue is to not run multiple debug instances of java at the same time
and to instead use release builds.  That is unfortunate in my case because the workload I
really want to run features a java process that spawns another java process.

On a probably unrelated note, it still looks like the debug builds are loading three different
sets of C runtime libraries.  MSVCRT, MSVCR71 and MSVCR71D (see HARMONY-2827 for a similar
problem on linux)



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message