Visible to Intel only — GUID: nna1685986437427
Ixiasoft
Visible to Intel only — GUID: nna1685986437427
Ixiasoft
3.5.1. 2214518: Global entries are not always invalidated as expected
Description
A transaction whose translation walk is in progress (which is marked as a global translation and is subject to invalidation by TLBI_S_EL1_VA, TLBI_NS_EL1_VA, and TLBI_NS_EL2_VA operations) is not invalidated as expected, unless the ASID that is specified also matches.
Conditions
The erratum occurs when all the following conditions are true:
- A translation request is being translated that marks the translation as a global entry
- Stage 1 is enabled for the translation that is in progress
- The transaction is waiting for the translation result, and the translation in progress is currently either performing a TCU walk cache lookup or page table walk
- The SMMU receives one of TLBI_S_EL1_VA, TLBI_NS_EL1_VA, or TLBI_NS_EL2_VA operations
- The ASID for the translation that is in progress does not match the ASID that is specified in the invalidation command
When the above conditions occur, the transaction is not subjected to invalidation, and the translated entry is cached in the TLBs.
Impact
Because the intended invalidation operation does not succeed, the incorrect address is accessed post invalidation, and data corruption can occur. This issue does not cause a security violation because Non-secure transactions cannot access Secure locations.
Workaround
You can work around this issue by replacing the affected TLBI_*_VA command with the corresponding TLBI_*_VAA command.
Category
Category B (rare)