> > @@ -58,12 +56,12 @@ int spu_handle_mm_fault(struct mm_struct *mm, unsigned 
> > long ea,
> >                     goto out_unlock;
> >     }
> >  
> > -   is_write = dsisr & MFC_DSISR_ACCESS_PUT;
> > +   is_write = dsisr & DSISR_ISSTORE;
> >     if (is_write) {
> >             if (!(vma->vm_flags & VM_WRITE))
> >                     goto out_unlock;
> >     } else {
> > -           if (dsisr & MFC_DSISR_ACCESS_DENIED)
> > +           if (dsisr & DSISR_PROTFAULT)
> >                     goto out_unlock;
> >             if (!(vma->vm_flags & (VM_READ | VM_EXEC)))
> >                     goto out_unlock;
> 
> Consistent DSISR encodings? woot! :)

Yep!

arch/powerpc/include/asm/spu.h:605:#define MFC_DSISR_ACCESS_PUT         (1 << 
25)
arch/powerpc/include/asm/reg.h:255:#define   DSISR_ISSTORE              
0x02000000      /* access was a store */

and 

arch/powerpc/include/asm/spu.h:603:#define MFC_DSISR_ACCESS_DENIED              
(1 << 27)
arch/powerpc/include/asm/reg.h:254:#define   DSISR_PROTFAULT    0x08000000      
/* protection fault */

Mikey
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to