rustsbi-k210 icon indicating copy to clipboard operation
rustsbi-k210 copied to clipboard

非法访问M模式寄存器时,RustSBI不能输出报错信息

Open BITzga opened this issue 2 years ago • 0 comments

非法访问M模式寄存器时,RustSBI不能输出报错信息

背景&预期

处于S/U模式的程序,是不能直接访问M模式寄存器的。SBI应该在非法访问时,提供报错信息。 0.0.1版本的k210支持包已经实现了该功能。但是在0.0.2版本的支持包里,这个功能消失了。

复现步骤

1.使用RustSBI支持包(bin)作为程序的bootloader 2.在程序的入口点直接访问M模式的寄存器 (可以直接在uCoreRV64的代码上改) csrr a5, mstatus 3.打包k210支持包和自己的程序,烧录到k210 4.如果是 这个支持包(0.1.0),会输出以下报错信息:

~I~CB3LKU `(KFD5INA369O

5.如果是0.0.1/0.0.2版本的支持包,则没有报错信息,程序也会卡住。

MFQ_@3~MX7}T(CP7D_G~GPQ

麻烦洛佳大佬有时间看看,感谢

BITzga avatar Apr 16 '22 15:04 BITzga