harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ilya Berezhniuk (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HARMONY-5247) [drlvm][init] DRL VM hangs with gc_cc in shutdown
Date Fri, 07 Dec 2007 12:58:43 GMT

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

Ilya Berezhniuk commented on HARMONY-5247:
------------------------------------------

The reason of hangup is the following situation:
- some thread is in ThreadGroup operation holding ThreadGroup.lock
- at the same time shutdown code sets shutdown callback to this thread
- run_java_detach invokes Thread.detach so ThreadGroup.lock is recursively obtained 2nd time
and then released once
- shutdown callback executes hythread_exit() ant thread dies without releasing ThreadGroup.lock
- all further tries to obtain ThreadGroup.lock will be blocked


I think I can see a way to solve this.
Shutdown callback should release ThreadGroup.lock after Thread.detach invocation if this monitor
is still owned by current thread.

To implement this approach I need a function like jthread_release_self_owned_monitor(jobject
monitor).


> [drlvm][init] DRL VM hangs with gc_cc in shutdown
> -------------------------------------------------
>
>                 Key: HARMONY-5247
>                 URL: https://issues.apache.org/jira/browse/HARMONY-5247
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>         Environment: Windows/x86
>            Reporter: Ilya Berezhniuk
>            Priority: Minor
>
> I've tried to pass 'build test' with GC_CC, and found that tests hang on JIT almost always.
> The reason is the same as for HARMONY-5136.
> Some thread is died with ThreadGroup.lock blocked, so main thread can't obtain this lock.
> Looks like HARMONY-5136 patch is incomplete.
> I used the following line to test the bug:
> win_em64t_msvc_debug\deploy\jdk\jre\bin\java.exe -Xem:opt -XX:gc.dll=gc_cc -XX:+vm.assert_dialog
-cp win_em64t_msvc_debug\tests\smoke.tests\classes StackTest

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