You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Ilya Berezhniuk (JIRA)" <ji...@apache.org> on 2008/03/20 17:15:26 UTC

[jira] Closed: (HARMONY-5618) [drlvm][port][signals] Fix for native stack unwinding

     [ https://issues.apache.org/jira/browse/HARMONY-5618?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ilya Berezhniuk closed HARMONY-5618.
------------------------------------


Thanks Gregory!

> [drlvm][port][signals] Fix for native stack unwinding
> -----------------------------------------------------
>
>                 Key: HARMONY-5618
>                 URL: https://issues.apache.org/jira/browse/HARMONY-5618
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Ilya Berezhniuk
>            Assignee: Gregory Shimansky
>            Priority: Minor
>             Fix For: 5.0M6
>
>         Attachments: H-5618.patch
>
>
> There were problems with native stack unwinding using EBP/RBP frame pointer - sometimes it points to incorrect return address.
> Therefore I've disabled EBP/RBP unwinding in the new crash handler implementation committed recently.
> Unfortunately, it appeared that unwinding with only 2nd heuristic approach (return addresses lookup in the stack) works not good also.
> This problems do not appear only on Windows/debug where local stack is erased in debug prolog and does not contain return addresses from previous call branches.
> I experimented a bit, and found a way to solve this problem.
> Suggested patch re-enables EBP/RBP unwinding with additional validation to filter out wrong EBP/RBP values which do not correspond to the current frame.

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