Thread (67 messages) 67 messages, 6 authors, 2017-10-19

Re: [RFC v7 24/25] powerpc: Deliver SEGV signal on pkey violation

From: Ram Pai <hidden>
Date: 2017-10-18 03:01:26

On Wed, Oct 18, 2017 at 01:25:48PM +1100, Balbir Singh wrote:
On Fri, 18 Aug 2017 15:36:55 -0700
Ram Pai [off-list ref] wrote:
quoted
On Sat, Aug 19, 2017 at 07:54:20AM +1000, Benjamin Herrenschmidt wrote:
quoted
On Fri, 2017-08-18 at 10:04 -0700, Ram Pai wrote:  
quoted
Assume two threads of a task.

T1:  mprotect_key(foo, PAGE_SIZE, pkey=4);
T1:  set AMR to disable access for pkey 4;
T1:  key fault
    T2: set AMR to enable access to pkey 4;
T1:  fault handler called.
        This fault handler will see the new AMR and not the
        one at the time of the fault.  
You aren't context switching AMR with the threads ? Ugh... something is
very wrong then.  
I do store and restore AMR accross context switch. So nevermind; the
above problem cannot happen.
I think the assumption is that pkey_alloc() will do the right thing
while allocating keys across threads
It does.  A key allocated to a thread will never be allocated to another
thread.

RP
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help