Skip to content

Conversation

@monojenkins
Copy link
Contributor

!! This PR is a copy of mono/mono#19103, please do not edit or review it in this repo !!
Do not automatically approve this PR:

* Consider how the changes affect configurations in this repo,
* Check effects on files that are not mirrored,
* Identify test cases that may be needed in this repo.

!! Merge the PR only after the original PR is merged !!



I've changed the variable the_ss_req to an array, in this array I saved all the single steps requisitions received and whenever the debugger stops in a possible singles step I get the right requisition in the array and answer it.
It is necessary to change debugger-libs together, because we can send a single step for thread A and receive an answer of thread B, so we shouldn't cancel the single step requisition for thread A, because it wasn't answered yet.
If the change in debugger-libs is not synchronised together if mono we will not have any side effect, the multithreaded step just don't work as nowadays.

Fixes mono/mono#14456

@monojenkins monojenkins force-pushed the sync-pr-19103-from-mono branch 2 times, most recently from 45e6cfd to 66da790 Compare March 5, 2020 16:42
@monojenkins monojenkins force-pushed the sync-pr-19103-from-mono branch from 66da790 to 9771e90 Compare March 11, 2020 18:00
@monojenkins monojenkins force-pushed the sync-pr-19103-from-mono branch 3 times, most recently from d5ee20f to f88bfbc Compare March 23, 2020 19:42
I've changed the variable the_ss_req to an array, in this array I saved all the single steps requisitions received and whenever the debugger stops in a possible singles step I get the right requisition in the array and answer it.
It is necessary to change debugger-libs together, because we can send a single step for thread A and receive an answer of thread B, so we shouldn't cancel the single step requisition for thread A, because it wasn't answered yet.
If the change in debugger-libs is not synchronised together if mono we will not have any side effect, the multithreaded step just don't work as nowadays.

Fixes mono/mono#14456

Relates to mono/debugger-libs#299
@monojenkins monojenkins force-pushed the sync-pr-19103-from-mono branch from f88bfbc to cb2aea7 Compare March 24, 2020 12:04
@thaystg thaystg merged commit dcfce2e into dotnet:master Mar 24, 2020
@ghost ghost locked as resolved and limited conversation to collaborators Dec 10, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[sdb] Impossible to step through multithreaded code

5 participants