]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
MFC r342552:
authorAndrew Turner <andrew@FreeBSD.org>
Tue, 17 Sep 2019 10:00:53 +0000 (10:00 +0000)
committerAndrew Turner <andrew@FreeBSD.org>
Tue, 17 Sep 2019 10:00:53 +0000 (10:00 +0000)
commit9fa8d8c1093c7443bb824034e74f197ccc99343b
tree54844e8979f27e238a093fc08f09a4646648040b
parentd1f8f1e94f879c2c516b6d0684648c5ee2385a6d
MFC r342552:
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.

Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D18511
sys/arm64/arm64/trap.c