----- On Jul 2, 2018, at 10:32 AM, Mathieu Desnoyers mathieu.desnoyers@xxxxxxxxxxxx wrote: [...] > > But rather than trying to play games with input validation, I would > favor an approach that would allow rseq to validate all its inputs > straightforwardly. Introducing user_64bit_mode(struct pt_regs *) > across all architectures would allow doing just that. rseq signal > delivery and return to usermode code could then ensure that high bits are > cleared by 32-bit tasks for all fields and thus provide a consistent > behavior for 32-bit tasks running on 32-bit and 64-bit kernels. AFAIU this could be achieved by re-introducing is_compat_task() on x86 as: #ifdef CONFIG_COMPAT static bool is_compat_task(void) { return user_64bit_mode(current_pt_regs())); } #else static bool is_compat_task(void) { return false; }; #endif Or am I missing something ? Thanks, Mathieu -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html