harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gregory Shimansky (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HARMONY-4533) [drlvm][jvmti] Failed assertion when running CombinedEventsTest in jdktools
Date Thu, 16 Aug 2007 10:13:30 GMT

    [ https://issues.apache.org/jira/browse/HARMONY-4533?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12520195
] 

Gregory Shimansky commented on HARMONY-4533:
--------------------------------------------

I found out the cause of the failed assertion. The reason is that invokevirtual and some other
invoke bytecodes have changed when JET got lazy resolution functionality.

One of the threads executes invokevirtual in DataInputStream.readUTF which eventually causes
compilation of DataInputStream.readUnsignedShort method. Compilation has a safepoint inside
of it, and there it is stopped by suspension.

Another thread which suspended the first, tries to enable single step mode in it. At this
moment bytecode analyzer tries to find out which bytecode the 1st thread is executing currently.
Bytecode mapping shows that it is invokevirtual. Single step algorithm tries to set a pseudo
breakpoint on the call location to find out where exactly the address of called method is.
But the problem is that call is already executed (it has caused compilation), and the call
instruction cannot be found in the code for invokevirtual bytecode. This is why assertion
fails.

It seems that now with lazy resolution all the logic of single step has to be changed to handle
such cases where invoked method is not yet resolved.

> [drlvm][jvmti] Failed assertion when running CombinedEventsTest in jdktools
> ---------------------------------------------------------------------------
>
>                 Key: HARMONY-4533
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4533
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>         Environment: win32
>            Reporter: Gregory Shimansky
>
> When running jdktools tests on debug version of DRLVM the test org.apache.harmony.jpda.tests.jdwp.Events.CombinedEventsTest
crashes on a failed assertion. The assertion is somewhere in DRLVM JVMTI single stepping code.

-- 
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