Page MenuHomeFreeBSD

arm64: Also populate tpidr_el2
Needs ReviewPublic

Authored by andrew on Oct 22 2024, 5:37 PM.
Tags
None
Referenced Files
F160277513: D47244.diff
Mon, Jun 22, 8:40 PM
Unknown Object (File)
Sun, Jun 21, 11:41 PM
Unknown Object (File)
Sat, May 30, 10:33 PM
Unknown Object (File)
Sat, May 30, 10:33 PM
Unknown Object (File)
May 10 2026, 6:40 AM
Unknown Object (File)
Apr 30 2026, 2:59 AM
Unknown Object (File)
Apr 28 2026, 9:49 PM
Unknown Object (File)
Apr 28 2026, 1:16 PM
Subscribers

Details

Reviewers
manu
Group Reviewers
arm64
Summary

When enabling the Software Delegated Exception Interface (SDEI) the
firmware may trash tpidr_el1. As this is used to store the per-cpu
data pointer this causes issues when we need to access this memory,
e.g. in a non-SDEI exception.

Fix this by also storing the per-CPU pointer value in tpidr_el2 when
in VHE as this isn't trashed.

Sponsored by: Arm Ltd

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 60155
Build 57039: arc lint + arc unit