diff options
| author | Sami Mujawar <sami.mujawar@arm.com> | 2026-09-15 01:03:18 +0300 |
|---|---|---|
| committer | mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> | 2026-09-29 16:27:06 +0300 |
| commit | 36c78fd39bccf997ea6e3e4c6d0bc2eb62f05528 (patch) | |
| tree | f0a30ace891126d75ab6a061ebcb3581fbcfa692 /BaseTools/Source/Python/Workspace | |
| parent | 13040db48903e0d7997908270e505e25a8be858c (diff) | |
| download | edk2-36c78fd39bccf997ea6e3e4c6d0bc2eb62f05528.tar.xz | |
UefiCpuPkg/ArmMmuLib: Preserve CCA attribute when splitting blocks
When an existing block entry is split into smaller mappings,
UpdateRegionMappingRecursive() populates the new child entries from the
attributes of the block being replaced.
The code only copied bits covered by TT_ATTRIBUTES_MASK. However, the CCA
protection attribute may be encoded in the output address field, so it is
not necessarily covered by TT_ATTRIBUTES_MASK. As a result, splitting a
shared or private block mapping could drop the CCA protection state from
the generated child entries.
Include CcaProtectionAttribute when inheriting attributes from the old
block entry, and use the same mask when checking whether an existing block
already has the requested attributes.
Reported-by: Hajira Zaman <hajirazaman@google.com>
Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
Diffstat (limited to 'BaseTools/Source/Python/Workspace')
0 files changed, 0 insertions, 0 deletions
