diff options
author | Alan Cox <alc@FreeBSD.org> | 2005-09-03 18:20:20 +0000 |
---|---|---|
committer | Alan Cox <alc@FreeBSD.org> | 2005-09-03 18:20:20 +0000 |
commit | ba8bca610cf08341d591a11f5d9816401bd325b3 (patch) | |
tree | 15a723ce98510b7ad44411dc2c1fe9370aed91b1 /sys/ia64 | |
parent | e17c0e3256538c4ceddf4cd8c2a0a1940f89024f (diff) | |
download | src-ba8bca610cf08341d591a11f5d9816401bd325b3.tar.gz src-ba8bca610cf08341d591a11f5d9816401bd325b3.zip |
Pass a value of type vm_prot_t to pmap_enter_quick() so that it determine
whether the mapping should permit execute access.
Notes
Notes:
svn path=/head/; revision=149768
Diffstat (limited to 'sys/ia64')
-rw-r--r-- | sys/ia64/ia64/pmap.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/ia64/ia64/pmap.c b/sys/ia64/ia64/pmap.c index b2a5f6e535f6..ce0df9fd8827 100644 --- a/sys/ia64/ia64/pmap.c +++ b/sys/ia64/ia64/pmap.c @@ -1570,12 +1570,12 @@ validate: * 2. Not wired. * 3. Read access. * 4. No page table pages. - * 6. Page IS managed. * but is *MUCH* faster than pmap_enter... */ vm_page_t -pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_page_t mpte) +pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, + vm_page_t mpte) { struct ia64_lpte *pte; pmap_t oldpmap; @@ -1613,7 +1613,8 @@ pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_page_t mpte) /* Initialise with R/O protection and enter into VHPT. */ pmap_enter_vhpt(pte, va); - pmap_pte_prot(pmap, pte, VM_PROT_READ); + pmap_pte_prot(pmap, pte, + prot & (VM_PROT_READ | VM_PROT_EXECUTE)); pmap_set_pte(pte, va, VM_PAGE_TO_PHYS(m), FALSE, managed); } |