Re: Compat 32-bit syscall entry from 64-bit task!?

From: Roland McGrath
Date: Mon Feb 06 2012 - 15:39:54 EST

On Mon, Feb 6, 2012 at 12:30 PM, H. Peter Anvin <hpa@xxxxxxxxx> wrote:
> What is needed to make a regset variable-sized? Just declaring that it
> may change in size in the future, or does one need a length field at the
> top (I would personally have expected that both notes and ptrace would
> have out-of-band methods for getting the size?)

ELF notes do have a size field, so core files are self-explanatory. There
is no ptrace interface to directly interrogate the regset details (one
could be added). But the PTRACE_GETREGSET interface is to accept an upper
bound and yield the actual size filled in (which might be less than the
regset's size if the user-supplied buffer was smaller). So in practice, a
caller can just use a buffer that's sure to be large enough, and then look
at iov_len for the actual size delivered. (And nobody has yet complained
about this for xstate, though that might just be that nobody is really
using it.)

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at