You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Rana Dasgupta (JIRA)" <ji...@apache.org> on 2007/04/18 17:31:17 UTC

[jira] Commented: (HARMONY-3272) [drlvm][thread] DRLVM hangs on stopping deadlocked daemon threads

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

Rana Dasgupta commented on HARMONY-3272:
----------------------------------------

It is true that pthread_mutex_lock is not a thread cancellation point on Linux. But with the fix in 3582, the shutdown thread continues the shutdown correctly and the hang problem does not reproduce.

> [drlvm][thread] DRLVM hangs on stopping deadlocked daemon threads
> -----------------------------------------------------------------
>
>                 Key: HARMONY-3272
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3272
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Salikh Zakirov
>         Assigned To: weldon washburn
>            Priority: Minor
>         Attachments: NoShutdown.java
>
>
> In order to be able safely release resources on VM shutdown, DRLVM tries to stop all remaining running daemon threads.
> The stopping algorithm cannot terminate deadlocked threads, i.e. threads blocked on MONITORENTER instruction,
> if monitors are fat (i.e. MONITORENTER eventually translates to EnterCriticalSection on Windows, or pthread_mutex_lock on Linux).
> The attached test NoShutdown.java demonstrates the behaviour.
> The possible solution is to use OS-level suspension / signals to suspend daemon threads, without necessarily terminating them,
> because the original purpose is to prevent them from running simultaneously with VM shutdown sequence.

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