Skip to content

dap: implement first pass at breakpoints #3302

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jul 14, 2025

Conversation

jsternberg
Copy link
Collaborator

@jsternberg jsternberg commented Jul 8, 2025

Implement the first iteration of breakpoints. When a breakpoint is set,
it starts unverified. When a thread begins evaluation, it tries to see
if a breakpoint corresponds to one of the parsed instructions and will
verify it.

Breakpoints work when continue is used.

At the current moment, setting breakpoints while a thread is currently
running doesn't work. Breakpoints are rechecked each time execution is
about to restart.

@jsternberg jsternberg requested review from tonistiigi and ktock July 8, 2025 16:22
@jsternberg jsternberg force-pushed the dap-breakpoints branch 2 times, most recently from b8075c4 to 11effc3 Compare July 8, 2025 17:35
@jsternberg
Copy link
Collaborator Author

It turned out to be way easier to reset the breakpoints when they changed during execution than I thought it would be. I thought it would need to be a different PR since I thought it would involve some message passing but it turns out it was just easy to check the breakpoints before each time continue was used.

@jsternberg jsternberg force-pushed the dap-breakpoints branch 2 times, most recently from 7bc4fb3 to 5db46fd Compare July 9, 2025 20:17
Copy link
Collaborator

@ktock ktock left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks

@jsternberg jsternberg added this to the v0.26.0 milestone Jul 11, 2025
Implement the first iteration of breakpoints. When a breakpoint is set,
it starts unverified. When a thread begins evaluation, it tries to see
if a breakpoint corresponds to one of the parsed instructions and will
verify it.

Breakpoints work when continue is used.

At the current moment, setting breakpoints while a thread is currently
running doesn't work. Breakpoints are rechecked each time execution is
about to restart.

Signed-off-by: Jonathan A. Sternberg <[email protected]>
@tonistiigi tonistiigi merged commit 266db93 into docker:master Jul 14, 2025
138 checks passed
@jsternberg jsternberg deleted the dap-breakpoints branch July 14, 2025 16:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants