uefi-rs
- While working on adding some more unit tests I found some undefined behavior using Miri. Filed an issue.
- Put up a PR to
partially fix that UB, by avoiding use of
allocate_bufferin the file info code. - Found some potential UB in the file info code with
-Zmiri-tag-raw-pointers, put up a PR to fix it. - I'd like to enable
-Zmiri-tag-raw-pointersin our Miri tests in general, but it's catching some issues withDevicePath. This one is tricky because unlike most protocols,DevicePathis really unsized. But we don't currently implement it that way.
Rust
- I've been using Miri more in uefi-rs to test our unsafe code, which we have quite a lot of. One issue I've had is that I find myself guessing a lot as to what Miri is trying to tell me. The error messages are relatively terse, and while a lot has been written about stacked borrows, it's not clear what the best resource to read is. As a first step to improving this situation I filed an issue in the Miri repo suggesting adding documentation for Miri's output to the readme. Even just documenting the notation used in the output would be a good start.