On Fri, Dec 18, 2015 at 10:42 AM, Dave Hansen <dave.han...@linux.intel.com> wrote: > On 12/18/2015 08:04 AM, Andy Lutomirski wrote: >> 1b. If the app malfunctions such that RSP points to pmem, the kernel >> MUST NOT clobber the pmem space. I think that this basically mandates >> that PKRU needs to have some safe state (i.e. definitely not the init >> state) on signal delivery: the kernel is going to write a signal frame >> at the address identified by RSP, and that address is in pmem, so >> those writes need to fail. > > The kernel is writing the signal frame using normal old copy_to_user(). > Those are writing through mappings with _PAGE_USER set and should be > subject to the PKRU state of the thread before the signal started to be > delivered. > > We don't do the fpu__clear() until after this copy, so I think pkeys > enforcement is being done properly for this today.
True, but I think only in a very limited sense. Your average signal handler is reasonably like to execute "push $rbp" as its very first instruction, at which point we're immediately screwed with the current arrangement. --Andy -- Andy Lutomirski AMA Capital Management, LLC -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/