Unifies and extends breakpoint and debug trap handling#33
Unifies and extends breakpoint and debug trap handling#33Godones wants to merge 2 commits intoarceos-org:devfrom
Conversation
There was a problem hiding this comment.
Pull request overview
This PR unifies breakpoint handling across architectures and extends x86_64 trap handling to include #DB (debug) traps, enabling registration of trap handlers for both breakpoint and debug events.
Changes:
- Add
BREAK_HANDLERand (x86_64-only)DEBUG_HANDLERdistributed-slice trap hooks. - Route breakpoint traps on aarch64/riscv/loongarch64/x86_64 through a shared handler mechanism.
- Introduce
ExceptionKind::Debug(x86_64-only) and classify x86_64 debug exceptions accordingly.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| src/x86_64/uspace.rs | Classify x86_64 debug exceptions as ExceptionKind::Debug. |
| src/x86_64/trap.rs | Add explicit handlers for #BP and #DB and route vectors to them. |
| src/uspace_common.rs | Add ExceptionKind::Debug behind cfg(target_arch = "x86_64"). |
| src/trap.rs | Define new distributed-slice trap hooks for breakpoint/debug handlers. |
| src/riscv/trap.rs | Route breakpoint exceptions through BREAK_HANDLER with TrapFrame access. |
| src/loongarch64/trap.rs | Route breakpoint exceptions through BREAK_HANDLER with TrapFrame access. |
| src/aarch64/uspace.rs | Update breakpoint exception classification to match BRK/BKPT EC values. |
| src/aarch64/trap.rs | Route BRK handling through BREAK_HANDLER with PC adjustment logic centralized. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Maybe we should finish #21 before this. Or we have to modify the linker script everywhere axcpu is used. |
Typically, projects that rely on axcpu also rely on axhal, and I have already updated axhal accordingly. |
No we also have some stuffs in https://github.com/arceos-org/axplat_crates, very annoying. But please fix the CI first, thanks. |
Signed-off-by: Godones <chenlinfeng25@outlook.com>
Signed-off-by: Godones <chenlinfeng25@outlook.com>
|
Oh no |
No description provided.