Ha-ha that code was buggy anyway :-) As I've already said we do need filter Thread.runImpl frames for java threads created by calling Thread.start method. Elena, you've fixed that code once, probably, you wish to fix it once again? :-)
Thank you Evgueni On 9/14/06, Elena Semukhina <[EMAIL PROTECTED]> wrote:
Oops, I haven't waited for Evgueni's message. The fix suggested in HARMONY-1431 does not imply the launcher implementation... Thanks, Elena On 9/14/06, Elena Semukhina <[EMAIL PROTECTED]> wrote: > > Actually, the code should be fixed rather than commented out in the > following way: > > //--size; > > // skip the VMStart$MainThread.runImpl() if it exists from the bottom > > // of the stack along with 2 reflection frames used to invoke method > main > > static String* starter_String = > genv->string_pool.lookup("java/lang/VMStart$MainThread"); > Method_Handle method = frames[size - 1].method; > assert(method); > > if (!strcmp(method_get_name(method), "runImpl") > && method->get_class()->name == starter_String) { > for (; --size;) { > method = frames[size - 1].method; > assert(method); > if ((strstr(method->get_class()->name->bytes, > "java/lang/reflect")) > == NULL) { > break; > > } > } > } > > ASSERT(size >= skip, "Trying to skip " << skip > << " frames but there are only " > << size << " frames in stack"); > > > The fix has been submitted in HARMONY-1431 which depends on HARMONY-1363. > > As for Eclipse's silent exit, please try to find what has happened in the > eclipse/configuration/*.log files. > > Thanks, > Elena > > On 9/14/06, Geir Magnusson Jr. <[EMAIL PROTECTED]> wrote: > > > > I'd like to understand why this is no longer necessary. > > > > (Just provide some background for all of us to help start understanding > > the structure and operation of DLRVM....) > > > > geir > > > > > > Vladimir Gorr wrote: > > > Probably, you didn't note I've commented this fragment of code (firts > > & > > > last > > > lines). > > > Sorry I didn't mention about this before. After these changes I could > > > sucessfully start the ActiveMQ. > > > Before I have the following error: > > > > > > Assertion failed: size >= skip > > > Trying to skip 6 frames but there are only 5 frames in stack > > > java: > > > > > /nfs/ins/proj/drl/coreapi/vgorr/drlvm/trunk/vm/vmcore/src/kernel_classes/native/org_apache_harmony_vm_VMStack.cpp:301: > > > > > > > > _jobject* Java_org_apache_harmony_vm_VMStack_getStackTrace(JNIEnv*, > > > _jobject*, _jobject*): Assertion `size >= skip' failed. > > > abort_handler() > > > > > > Thanks, > > > Vladimir. > > > > > > On 9/13/06, Geir Magnusson Jr. <[EMAIL PROTECTED]> wrote: > > >> > > >> I'm a little skeptical, as I had that change in before you first > > tested > > >> and found a problem, right? > > >> > > >> geir > > >> > > >> > > >> Vladimir Gorr wrote: > > >> > > > vm\vmcore\src\kernel_classes\native\org_apache_harmony_vm_VMStack.cpp > > >> > ... > > >> > * /* > > >> > * // skip Thread.runImpl() > > >> > size--; > > >> > > > >> > // skip the VMStart$MainThread if one exits from the bottom of > > the > > >> stack > > >> > // along with 2 reflection frames used to invoke method main > > >> > static String* starter_String = > > >> > genv->string_pool.lookup("java/lang/VMStart$MainThread"); > > >> > Method_Handle method = frames[size].method; > > >> > assert(method); > > >> > // skip only for main application thread > > >> > if (!strcmp(method_get_name(method), "runImpl") > > >> > && method->get_class()->name == starter_String) { > > >> > int rem = size - skip-1; > > >> > size -= rem < 2 ? rem : 2; > > >> > } > > >> > ASSERT(size >= skip, "Trying to skip " << skip > > >> > << " frames but there are only " > > >> > << size << " frames in stack"); > > >> > * */* > > >> > ... > > >> > > > >> > > > >> > Thanks, > > >> > Vladimir. > > >> > > > >> > On 9/13/06, Geir Magnusson Jr. <[EMAIL PROTECTED]> wrote: > > >> >> > > >> >> > > >> >> > > >> >> Vladimir Gorr wrote: > > >> >> > I was able to sucessfully run both applications (Eclipse & > > ActiveMQ) > > >> >> for > > >> >> > the > > >> >> > recent build. > > >> >> > > >> >> what changed? > > >> >> > > >> >> geir > > >> >> > > >> >> > > > >> >> > Thanks, > > >> >> > Vladimir. > > >> >> > > > >> >> > On 9/12/06, Geir Magnusson Jr. < [EMAIL PROTECTED]> wrote: > > >> >> >> > > >> >> >> doh. Thanks. I feel dumb for not trying the simplest thing > > first > > >> :) > > >> >> >> > > >> >> >> There's a test... > > >> >> >> > > >> >> >> geir > > >> >> >> > > >> >> >> > > >> >> >> Anton Luht wrote: > > >> >> >> > Hello, > > >> >> >> > > > >> >> >> > The 'java -jar' launcher prints dump and exits even on a > > minimal > > >> >> >> > HelloWorld app jar - please see > > >> >> >> > http://issues.apache.org/jira/browse/HARMONY-1444 > > >> >> >> > > > >> >> >> > On 9/12/06, Anton Luht < [EMAIL PROTECTED]> wrote: > > >> >> >> >> No, I used hand-made build from SVN. > > >> >> >> >> > > >> >> >> >> BTW, sorry for confusion about 'broken data'. The pointer > > value > > >> is > > >> >> >> >> changed inside the method - this assignment should be > > removed. > > >> >> >> >> > > >> >> >> >> On 9/12/06, Vladimir Gorr < [EMAIL PROTECTED]> wrote: > > >> >> >> >> > Did you run this application for the recent binaries got > > from > > >> the > > >> >> >> SVN > > >> >> >> >> > sources? > > >> >> >> >> > As for me my results differ from Geir ones, namely, DRLVM > > >> crashes > > >> >> >> >> for both > > >> >> >> >> > Windows & Linux as follows: > > >> >> >> >> > > > >> >> >> >> > ======= > > >> >> >> >> > Windows > > >> >> >> >> > ======= > > >> >> >> >> > > > >> >> >> >> > vgorr@ /cygdrive/c/Tools/incubator-activemq-4.0 > > >> >> >> >> > $ echo JAVA_HOME > > >> >> >> >> > JAVA_HOME > > >> >> >> >> > > > >> >> >> >> > vgorr@ /cygdrive/c/Tools/incubator-activemq-4.0 > > >> >> >> >> > $ echo $CLASSPATH > > >> >> >> >> > c:/Tools/incubator-activemq-4.0/lib > > >> >> >> >> > > > >> >> >> >> > vgorr@ /cygdrive/c/Tools/incubator-activemq-4.0 > > >> >> >> >> > $ which java > > >> >> >> >> > > > >> >> >> >> > > >> >> >> > > >> >> > > >> > > /cygdrive/c/DrlSrc/drlvm/trunk/build/win_ia32_msvc_debug/deploy/jre/bin/java > > > > >> > > >> >> > > >> >> >> > > >> >> >> >> > > >> >> >> >> > > > >> >> >> >> > vgorr@ /cygdrive/c/Tools/incubator- activemq-4.0 > > >> >> >> >> > $ bin/activemq > > >> >> >> >> > cygpath: can't convert empty path > > >> >> >> >> > > > >> >> >> >> > An unhandled error (4) has occurred. > > >> >> >> >> > HyGeneric_Signal_Number=00000004 > > >> >> >> >> > ExceptionCode=c0000005 > > >> >> >> >> > ExceptionAddress=00F3D648 > > >> >> >> >> > ContextFlags=0001003f > > >> >> >> >> > Handler1=00401010 > > >> >> >> >> > Handler2=11105D20 > > >> >> >> >> > InaccessibleAddress=00F3D648 > > >> >> >> >> > EDI=0013F9D4 > > >> >> >> >> > ESI=0013F768 > > >> >> >> >> > EAX=00000000 > > >> >> >> >> > EBX=0000000B > > >> >> >> >> > ECX=00000001 > > >> >> >> >> > EDX=0000000C > > >> >> >> >> > EIP=00F3D648 > > >> >> >> >> > ESP=0013F764 > > >> >> >> >> > EBP=0013F770 > > >> >> >> >> > Module= > > >> >> >> >> > Module_base_address=00F30000 > > >> >> >> >> > Offset_in_DLL=0000d648 > > >> >> >> >> > ==== > > >> >> >> >> > Linux > > >> >> >> >> > ==== > > >> >> >> >> > > > >> >> >> >> > sh bin/activemq > > >> >> >> >> > java: > > >> >> >> >> > > > >> >> >> >> > > >> >> >> > > >> >> > > >> > > /nfs/ins/proj/drl/coreapi/vgorr/drlvm/trunk/vm/vmcore/src/exception/exceptions.cpp:143: > > > > >> > > >> >> > > >> >> >> > > >> >> >> >> > > >> >> >> >> > _jobject* create_exception(const char*): Assertion > > >> >> >> >> > `hythread_is_suspend_enabled()' failed. > > >> >> >> >> > abort_handler() > > >> >> >> >> > Aborted > > >> >> >> >> > > > >> >> >> >> > > > >> >> >> >> > Thanks, > > >> >> >> >> > Vladimir. > > >> >> >> >> > > > >> >> >> >> > On 9/12/06, Anton Luht <[EMAIL PROTECTED] > wrote: > > >> >> >> >> > > > > >> >> >> >> > > Hello, > > >> >> >> >> > > > > >> >> >> >> > > I'm observing the same problem - ActiveMQ can't start - > > on > > >> >> DRLVM > > >> >> + > > >> >> >> >> > > Classlibrary build 442240 . > > >> >> >> >> > > > > >> >> >> >> > > The problem I see first is that in > > >> >> >> >> > > <classlib > > >> >> >> root>\modules\luni\src\main\native\launcher\shared\main.c > > >> >> >> >> > > > > >> >> >> >> > > in function 'static int invocation' after call > > >> 'createVMArgs' > > >> >> >> >> variable > > >> >> >> >> > > 'mainClassJar' contains garbale while in the very end of > > >> >> 'static > > >> >> >> int > > >> >> >> >> > > createVMArgs' it contains valid string > > >> >> >> >> > > 'org.apache.harmony.kernel.vm.JarRunner' . If we comment > > out > > >> >> >> >> > > 'hymem_allocate_memory' in that function: > > >> >> >> >> > > > > >> >> >> >> > > if (isStandaloneJar) > > >> >> >> >> > > { > > >> >> >> >> > > if (useDefaultJarRunner == 0) > > >> >> >> >> > > { > > >> >> >> >> > > //:::commented out:::: mainClassJar = > > >> >> >> >> hymem_allocate_memory (50); > > >> >> >> >> > > if (mainClassJar == NULL) > > >> >> >> >> > > > > >> >> >> >> > > the application will crash a little later. Note: we can > > >> comment > > >> >> >> this > > >> >> >> >> > > out because memory for mainClassJar is already allocated > > in > > >> the > > >> >> >> >> > > calling method. > > >> >> >> >> > > > > >> >> >> >> > > I believe that the general problem is that contents of > > >> memory > > >> >> >> >> alocated > > >> >> >> >> > > with hymem_allocate_memory get somehow broken on exit > > from a > > >> >> >> method. > > >> >> >> >> > > > > >> >> >> >> > > On 9/9/06, Geir Magnusson Jr. < [EMAIL PROTECTED]> wrote: > > >> >> >> >> > > > I applied the GCv4.1 patch and now I pass smoke > > test. I > > >> >> suspect > > >> >> >> >> it may > > >> >> >> >> > > > be because the patch modifies the LOS test, but I'm > > not so > > >> >> sure. > > >> >> >> >> > > > > > >> >> >> >> > > > that patch (HARMONY-1269) is a sole-author patch to > > our > > >> >> existing > > >> >> >> >> > > > codebase, and while I do have a BCC to put in SVN, I > > think > > >> >> that > > >> >> >> >> this is > > >> >> >> >> > > > a patch, and not a "bulk contribution", so I'll go > > forward > > >> >> and > > >> >> >> >> commit > > >> >> >> >> > > it. > > >> >> >> >> > > > > > >> >> >> >> > > > geir > > >> >> >> >> > > > > > >> >> >> >> > > > > > >> >> >> >> > > > Geir Magnusson Jr. wrote: > > >> >> >> >> > > > > More news - I'm not passing the smoke tests. gc.LOCjust > > >> >> spins > > >> >> >> >> (and > > >> >> >> >> > > > > sucks a lot of memory in). > > >> >> >> >> > > > > > > >> >> >> >> > > > > Clearly what I thought were trivial changes to > > switch to > > >> >> use > > >> >> >> the > > >> >> >> >> > > > > launcher had hidden effects. Any suggestions where > > to > > >> >> start > > >> >> >> >> looking? > > >> >> >> >> > > > > > > >> >> >> >> > > > > geir > > >> >> >> >> > > > > > > >> >> >> >> > > > > Geir Magnusson Jr. wrote: > > >> >> >> >> > > > >> I was testing the DRLVM-in-Launcher setup and > > something > > >> is > > >> >> >> >> seriously > > >> >> >> >> > > > >> broken. > > >> >> >> >> > > > >> > > >> >> >> >> > > > >> On Ubuntu, both debug and release builds, it will > > run > > >> >> Tomcat > > >> >> >> >> ok, but > > >> >> >> >> > > > >> when I try something like Eclipse 3.2 or ActiveMQ > > 4.0.2 > > >> >> the > > >> >> >> >> program > > >> >> >> >> > > > >> runs and silently exits. No log output, no console > > >> >> output. > > >> >> >> >> > > > >> > > >> >> >> >> > > > >> I've been trying to find a hint of what is making > > it > > >> >> unhappy, > > >> >> >> >> but so > > >> >> >> >> > > > >> far, no luck. > > >> >> >> >> > > > >> > > >> >> >> >> > > > >> I've been staring at the output with -Xlog and > > -Xtrace, > > >> >> and > > >> >> >> >> there > > >> >> >> >> > > > >> doesn't seem to be any errors, but I don't know > > what to > > >> >> look > > >> >> >> >> for. ( > > >> >> >> >> > > > >> > > >> >> >> >> > > > >> I've captured the stream and placed it here : > > >> >> >> >> > > > >> > > >> >> >> >> > > > >> > > >> >> >> >> > > http://people.apache.org/~geirm/activemq-logstream-20060909.txt > > >> >> >> >> > > > >> > > >> >> >> >> > > >> http://people.apache.org/~geirm/activemq-tracestream-20060909.txt > > >> >> >> >> > > > >> > > >> >> >> >> > > > >> If anyone has any hints, I'd be mighty obliged... > > >> >> >> >> > > > >> > > >> >> >> >> > > > >> geir > > >> >> >> > > > >> >> >> > > >> >> >> > > >> --------------------------------------------------------------------- > > >> >> >> Terms of use : http://incubator.apache.org/harmony/mailing.html > > >> >> >> To unsubscribe, e-mail: > > >> [EMAIL PROTECTED] > > >> >> >> For additional commands, e-mail: > > >> [EMAIL PROTECTED] > > >> >> >> > > >> >> >> > > >> >> > > > >> >> > > >> >> > > --------------------------------------------------------------------- > > >> >> Terms of use : http://incubator.apache.org/harmony/mailing.html > > >> >> To unsubscribe, e-mail: [EMAIL PROTECTED] > > > > >> >> For additional commands, e-mail: > > [EMAIL PROTECTED] > > >> >> > > >> >> > > >> > > > >> > > >> --------------------------------------------------------------------- > > >> Terms of use : http://incubator.apache.org/harmony/mailing.html > > >> To unsubscribe, e-mail: [EMAIL PROTECTED] > > >> For additional commands, e-mail: > > [EMAIL PROTECTED] > > >> > > >> > > > > > > > --------------------------------------------------------------------- > > Terms of use : http://incubator.apache.org/harmony/mailing.html > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > -- > Thanks, > > Elena > -- Thanks, Elena
--------------------------------------------------------------------- Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]