arm64: add missing REG_SCTLR_EL1 initialization in signal processing

Add REG_SCTLR_EL1 system register initialization in arm64_init_signal_process
when setting up register context for signal handlers. Initialize with current
sctlr_el1 value and apply CONFIG_ARM64_MTE settings if enabled. Fixes regression
where signal handler context was missing critical system control register setup.

Signed-off-by: hujun5 <hujun5@xiaomi.com>
This commit is contained in:
hujun5
2026-01-17 14:13:55 +08:00
committed by GUIDINGLI
parent acc833b07d
commit 13d1092939
@@ -66,6 +66,11 @@ static void arm64_init_signal_process(struct tcb_s *tcb, uint64_t *regs)
tcb->xcp.regs[REG_SPSR] = SPSR_MODE_EL1H | DAIF_FIQ_BIT | DAIF_IRQ_BIT;
#endif
tcb->xcp.regs[REG_SCTLR_EL1] = read_sysreg(sctlr_el1);
#ifdef CONFIG_ARM64_MTE
tcb->xcp.regs[REG_SCTLR_EL1] |= SCTLR_TCF1_BIT;
#endif
#ifdef CONFIG_ARCH_KERNEL_STACK
tcb->xcp.regs[REG_SP_EL0] = regs[REG_SP_EL0];
#else