Re: [PATCH] arm64: suspend: Save and restore TPIDR2_EL0 across CPU suspend

From: Mark Brown

Date: Tue Nov 03 2026 - 10:25:52 EST


On Mon, Nov 02, 2026 at 11:48:13PM +0000, Wei Wang wrote:

> On systems with FEAT_SME, TPIDR2_EL0 is part of userspace thread state:
> the AAPCS64 SME ABI uses it as the ZA lazy-save pointer, and the kernel
> context-switches it eagerly in tls_thread_switch(). While a task is
> running, the live register is the only copy of its value.

Thanks for catching this:

Reviewed-by: Mark Brown <broonie@xxxxxxxxxx>

but I think we're missing some other registers, I made the same mistake
for GCS with GCSPR_EL0 and GCSCRE0_EL1 and I'm not seeing where POR_EL0
is handled either but possibly it's somewhere I didn't spot. I can look
into those incrementally once this gets applied (or if you do a v2 and
roll them in that'd also be great!).

Attachment: signature.asc
Description: PGP signature