svn commit: r342552 - head/sys/arm64/arm64

John Baldwin jhb at FreeBSD.org
Thu Dec 27 19:57:47 UTC 2018


On 12/27/18 6:14 AM, Andrew Turner wrote:
> Author: andrew
> Date: Thu Dec 27 14:14:41 2018
> New Revision: 342552
> URL: https://svnweb.freebsd.org/changeset/base/342552
> 
> Log:
>   Pass VM_PROT_EXECUTE to vm_fault for instruction faults.
>   
>   We need to tell vm_fault the reason for the fault was because we tried to
>   execute from the memory location. Without this it may return with success
>   as we only request read-only memory, then we return to the same location
>   and try to execute from the same memory address. This leads to an infinite
>   loop raising the same fault and returning to the same invalid location.

Note that on other architectures, ftype isn't a mask, but is a single value
(one of VM_PROT_READ/WRITE/EXECUTE) to indicate the type of faulting access.
I fixed this in riscv's pmap recently (it seemed to have been copied from
arm64).

-- 
John Baldwin

                                                                            


More information about the svn-src-all mailing list