patina-v14.3.0
What's Changed
-
sdk: Prevent null pointer dereferences [Rebase \& FF] @makubacki (#1011)
Change Details
## Description
Based on recent CodeQL results, update non-test code findings to more explicitly handle potentially null pointers.
c_ptr: Panic with a clear message ifinto_original_ptr()is called when the stored pointer is null since it will attempt to to copy from that address.volume: UpdateVolumeRef::new_from_address()to validate the incoming FV header address before attempting to convert the address to a pointer and read from it.
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
- Creates a new crate?
How This Was Tested
cargo make all- CodeQL with rust queries
Integration Instructions
- N/A
-
Update to patina-devops v0.1.1 @Javagedes (#1003)
Change Details
## Description
Updates to patina-devops v0.1.1 which splits the mdbook building into a new job and also adds mdbook example testing.
Tangentially this update also re-orders some CI tests to improve the overall time it takes to complete CI.
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
How This Was Tested
CI
Integration Instructions
N/A
-
Update trigger for skipping release dry-run @Javagedes (#1005)
Change Details
## Description
Updates the trigger to skip the release dry run step to allow the user to simply click the button in the draft
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
- Creates a new crate?
How This Was Tested
This exact workflow checks the box and the test is skipped.
Integration Instructions
N/A
-
chore: Update repo version to 14.2.0 @[patina-automation[bot]](https://github.com/apps/patina-automation) (#1000)
Change Details
An automatically created pull request to update the version of the repo due to a release.
🚀 Features & ✨ Enhancements
-
patina\_dxe\_core: Use `NonNull::expose_provenance` @hashcatHitman (#1002)
Change Details
## Description
In
patina_dxe_core::allocator::core_allocate_pages, changes:To:
As described in #634.
Fixes #634.
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
How This Was Tested
Ran existing tests in CI and locally.
Used CodeLLDB to step through test execution before and after to verify the written value was identical.
Ran
cargo miri test --no-fail-fast -q --color=nevertwice on unmodified 5a58596 and twice on c2ceb10, piping each to their own text file. Diffing shows very small differences in test failures (which are different between two runs on the same commit too), but no change in the complaints from Miri (though Miri does have complaints, just nothing new).Integration Instructions
N/A
🐛 Bug Fixes
-
patina\_dxe\_core/gcd: Skip setting mem attrs for V1 MMIO and Reserved HOBs @makubacki (#1014)
Change Details
## Description
Closes #1012
Currently, the memory attributes for MMIO resource descriptor V1 HOBs
is being calculated as0(since no cache attributes are set).This causes an assert:
GCD failed to set memory attributes 0x0 for base: 0xFEDA3000, length: 0x1000This change skips calling
set_memory_space_attributes()for V1
resource descriptor HOBs with0memory attributes which matches
previous behavior for V1 HOBs.
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
- Creates a new crate?
How This Was Tested
cargo make all- Verified a physical platform with V1 HOBs no longer asserts on MMIO or reserved HOBs that have attributes set to
0during HOB list processing.
Integration Instructions
- N/A
📖 Documentation Updates
-
docs: Add Patina DXE Core Requirements Checklist to the summary @makubacki (#1009)
Change Details
## Description
Include a link to the checklist in SUMMARY.md to ensure it is rendered as expected by mdbook.
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
- Creates a new crate?
How This Was Tested
mdbook serve docslocally
Integration Instructions
- N/A
-
docs: Add Unsafe.md @os-d (#951)
Change Details
## Description
This adds Patina specific guidance on unsafe usage and how that applies to system software, introducing the concepts of software vs hardware safety.
- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
How This Was Tested
N/A.
Integration Instructions
N/A.
-
mdbook: Update background examples for `mdbook test` @makubacki (#1001)
Change Details
## Description
Closes #974
The examples are updated to pass:
rustup run nightly-2025-09-19 mdbook test docs -L target\debug\depsMost code snippets are marked
no_runas exercising the full Patina code does not make sense in the context of the example. A few are markedignoreif compilation would have a lot of overhead with little return.- Impacts functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
How This Was Tested
cargo make cleancargo make build-librustup run nightly-2025-09-19 mdbook test docs -L target\debug\deps
Integration Instructions
- N/A
Full Changelog: patina-v14.2.0...v14.3.0