Page MenuHomeFreeBSD

arm64: Also populate tpidr_el2
Needs ReviewPublic

Authored by andrew on Oct 22 2024, 5:37 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Jul 28, 1:48 PM
Unknown Object (File)
Mon, Jul 27, 7:52 AM
Unknown Object (File)
Sun, Jul 26, 7:38 PM
Unknown Object (File)
Wed, Jul 22, 5:11 PM
Unknown Object (File)
Tue, Jul 21, 5:07 AM
Unknown Object (File)
Jun 22 2026, 8:40 PM
Unknown Object (File)
Jun 21 2026, 11:41 PM
Unknown Object (File)
May 30 2026, 10:33 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