patina-v19.0.4
What's Changed
-
Fix safety comment and other clippy issues @cfernald (#1248)
Change Details
## Description
With the recent change to include clippy in the architecture aware runs, clippy issues with aarch64 were exposed. This commit resolves various clippy issues
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
How This Was Tested
Local clippy run
Integration Instructions
N/A
</blockquote> <hr> </details>
-
patina\_dxe\_core: Fix memory allocation tests for aarch64 runtime types @cfernald (#1241)
Change Details
## Description
Current implementations of several tests and hob construction logic use a single page for runtime memory types. On aarch64, the runtime page allocation granularity is 64kb, so all of these memory regions are dropped causing the tests to fail.
Contributes to #1071
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
How This Was Tested
Unit tests
Integration Instructions
N/A
</blockquote> <hr> </details>
-
patina\_internal\_cpu: remove page table creation test @cfernald (#1242)
Change Details
## Description
This removes a test that causes exception on aarch64 targets. This test attempts to create an offline page table from user-mode which is not currently supported by the patina-paging crate as it will access system registers during table initialization. No equivalent test exists for x64.
Contributes to #1071
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
How This Was Tested
Unit tests
Integration Instructions
N/A
</blockquote> <hr> </details>
🐛 Bug Fixes
-
bugfix: Enable compat mode for EFI\_APPLICATION @Javagedes (#1249)
Change Details
## Description
In bde612d (written by me), I updated the logic around when to apply compatibility mode from being for a EFI_APPLICATION to a EFI_RUNTIME_DRIVER. Not sure how or why, but it was completely my fault. This fixes that.
This was caught during my work to created nightly "boot to os" github workflow.
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
How This Was Tested
N/A
Integration Instructions
N/A
</blockquote> <hr> </details>
-
patina\_internal\_collections: Prevent out-of-bounds access in resize() @makubacki (#1243)
Change Details
## Description
Add bounds checking before accessing buffer[idx] in Storage::resize().
When resizing to a buffer with no free space (idx >= buffer.len()), set available to null instead of attempting to access out-of-bounds memory.
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
How This Was Tested
- Unit tests (
cargo make all) - patina-qemu boot to EFI shell
Integration Instructions
- N/A
Full Changelog: patina-v19.0.3...v19.0.4