Messages in this thread | | | Date | Tue, 3 Jul 2018 14:15:34 -0400 (EDT) | From | Mathieu Desnoyers <> | Subject | Re: [RFC PATCH for 4.18] rseq: use __u64 for rseq_cs fields, validate user inputs |
| |
----- On Jul 3, 2018, at 2:11 PM, Peter Zijlstra peterz@infradead.org wrote:
> On Tue, Jul 03, 2018 at 01:58:37PM -0400, Mathieu Desnoyers wrote: >> I can modify the ABI to put the cpu_id_start and cpu_id fields inside >> a union, and update it with a single store. >> >> Thoughts ? > > Let's keep them for now, we can always frob this later, they are aligned > and proper, no need to expose that union to userspace.
Isn't it weird to change the API of an exposed public uapi header ? What if userspace chooses to do sizeof(__rseq_abi.cpu_id) ? We would break this unless we use a transparent union, which puts constraints I would hope not to have on compilers supporting transparent unions (I recall C++ had issues with this).
I'd prefer to expose the union right away if it's fine with you.
Thanks,
Mathieu
-- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com
| |