Repository navigation
Add handshake timeout option to KD/KDNET and unlimited TCG hardware breakpoints for QEMU - #37
Merged
Merged
Conversation
# Conflicts: # CHANGELOG.md # src/breakpoints/hardware.rs # src/gdb/mod.rs # src/kd/connect.rs # src/kd/mod.rs # src/python/mod.rs # src/session/hits.rs # src/session/tests.rs
# Conflicts: # src/backend/gdb/mod.rs # src/hosts/cli.rs # src/lib.rs # src/session/tests.rs
- Regenerate the SDK stub (CI's stub check failed) and match only "KD serial socket" in the surface test, since macOS rejects the long temporary socket path before checking it exists. - KdBackend::connect and connect_net take the timeout themselves rather than wrapping *_with_handshake_timeout twins; handshake_timeout is pub and imported in cli.rs. - A refused hardware breakpoint reads as a breakpoint error naming KVM's four debug registers and `bc`, not as a GDB protocol failure; the KD timeout hint names NTOSEYE_KD_TIMEOUT too. - Move the changelog entry from v0.50.0 to Unreleased and add one for the gdb backend's hardware breakpoints. - Drop tests that pin serde, schemars or defaults, or repeat the Python surface tests.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds --kd-handshake-timeout for the KD and KDNET backends. The timeout was already exposed through NTOSEYE_KD_TIMEOUT, but having it only as an environment variable felt inconsistent with the other connection options and made it easy to miss in my experience.
The parameter accepts seconds and controls the initial handshake. It is also available through the API as kd_handshake_timeout.
Additionally, removes the four-slot limit on GDB hardware breakpoint records, allowing unlimited hardware breakpoints in QEMU’s TCG mode.
TCG is probably a seldom used, but useful for studying a headless target