This adds the PT_GETREGSET ptrace type. This reads all the registers from
a specified core dump note type. Because the data field is an int the
arguments are backwards when compared to the Linux PTRACE_GETREGSET
The ptrace addr points to a struct iovec pointing at memory to hold the
registers along with its length. On success the length in the iovec is
updated to tell userspace the actual length the kernel wrote.
Currently there's no way to ask for the length userspace needs to
allocate from the kernel. One possible solution is to use a null vec,
where the base is NULL and length is 0, and have the kernel set the
length to be correct.
Add support to read NT_X86_XSTATE. This is sufficienrly complex as its
length is only known at runtime. To handle this case use a SYSINIT to
set the size on boot.