On 03/05/2024 15:01, Joey Gouly wrote:
> @@ -1020,6 +1060,15 @@ static int setup_sigframe(struct 
> rt_sigframe_user_layout *user,
>               __put_user_error(current->thread.fault_code, &esr_ctx->esr, 
> err);
>       }
>  
> +     if (system_supports_poe() && err == 0 && user->poe_offset) {
> +             struct poe_context __user *poe_ctx =
> +                     apply_user_offset(user, user->poe_offset);
> +
> +             __put_user_error(POE_MAGIC, &poe_ctx->head.magic, err);
> +             __put_user_error(sizeof(*poe_ctx), &poe_ctx->head.size, err);
> +             __put_user_error(read_sysreg_s(SYS_POR_EL0), &poe_ctx->por_el0, 
> err);

Nit: would be nicer to have this in its own helper
(preserve_poe_context()), like for the other optional records.

Kevin

Reply via email to