trapframe-rs
trapframe-rs copied to clipboard
Handle TrapFrame across kernel and user space on multiple ISAs.
https://github.com/rcore-os/trapframe-rs/blob/0f27d58f5a13ae08cf5293ab0999cd12878950e1/src/arch/riscv/trap.rs#L44 This line just sets Direct-Mode and `trap.S` does not support Vectored-Mode now. I suggest that this library support Vectored-Mode on RISC-V. --- 这行直接设置为了 Direct-Mode,而且 `trap.S` 目前也并不支持 Vectored-Mode。我建议本库支持 RISC-V 上的...
It seems that floating-point registers are not saved/restore, which may result in corruption on user register. --- 浮点寄存器似乎并没有被保存、恢复,这可能导致用户的寄存器值被污染。
Occasionally an error occurs when the x86 64 arch boot: ``` panicked at 'attempt to create unaligned or null slice' ``` The location of the error occurs in [x86_64/gdt.rs](https://github.com/rcore-os/trapframe-rs/blob/25cb5282aca8ceb4f7fc4dcd61e7e73b67d9ae00/src/arch/x86_64/gdt.rs#L39) ```...
The [X86-64 System V ABI](https://refspecs.linuxbase.org/elf/x86_64-abi-0.99.pdf) requires the `DF` flag (Direction Flag) to be cleared (`DF = 0`) on function entry and return. If `DF` is not cleared, it can lead...
Relying on stateful directives to persist across inline assembly instances is forbidden: https://doc.rust-lang.org/reference/inline-assembly.html#r-asm.directives.stateful Without this patch, in some scenarios, trapframe fails to compile, since the macros `XLENB`, `LOAD_SP`, and `STORE_SP`...