You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Summary:
I discovered this issue, when trying to switch roar shims from ReadFromTarget
to ReadFromProcess.
Due to recursive calls the m_making_external_plugin_call would get set to false.
Because of this SBProcess::ReadMemory will return error "process is running.
Recursive stack trace:
{F1981033265}
In lldb_roar_private::JITLoaderROARSB::HandleNameBreakpointEvent
We enter a scope and m_making_external_plugin_call is set to true.
{F1981033274}
through call to SetCallback we end up in ReadJITEntries()
{F1981033299}
where we enter another scope m_making_external_plugin_call is set to true,
and then false as scope is exited.
So when m_roar_di->HandleBreakpointByAddress is called and we end up reading from
process the m_making_external_plugin_call is false, and error is returned.
Test Plan: ninja check-lldb
Rollback Plan:
Reviewers: jpporto, #roar-jit, #lldb_team, ottoni
Reviewed By: jpporto
Differential Revision: https://phabricator.intern.facebook.com/D79913869
Tasks: T233982208
Tags: auto_accept2ship
(cherry picked from commit b529c0588ea76c3ac251a3050da6aca576d8c1a0)
0 commit comments