-
-
Notifications
You must be signed in to change notification settings - Fork 21
Allow hw bps at invalid locations #284
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
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR allows hardware breakpoints and watchpoints to be set at non-existent memory addresses, enabling them to trigger when that memory is later allocated and accessed. The change adds fallback behavior for hardware breakpoints at absolute addresses that can't be resolved in current memory maps.
- Enhanced address resolution to handle hardware breakpoints at invalid/unmapped addresses
- Added comprehensive test coverage with dynamic memory mapping scenarios
- Updated documentation to reflect the new capability
Reviewed Changes
Copilot reviewed 4 out of 7 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| libdebug/debugger/internal_debugger.py | Added exception handling to allow hardware breakpoints at unresolved absolute addresses |
| test/srcs/breakpoint_test_2.c | Created test program with dynamic memory mapping to validate breakpoint behavior |
| test/scripts/breakpoint_test.py | Added test case for hardware breakpoints at invalid locations |
| newsfragments/284.improvement.md | Added changelog entry describing the new feature |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
io-no
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it a draft because you’re worried about edge cases, or do you already know of edge cases that aren’t handled yet? In general lgtm
|
@io-no currently it is a draft because it breaks in the CI and I couldn't figure out why |
dcc7c45 to
b3f5413
Compare
|
I'm starting to think that this might be a QEMU bug... |
No description provided.