diff options
author | alc <alc@FreeBSD.org> | 2006-08-01 19:06:06 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2006-08-01 19:06:06 +0000 |
commit | a152234cf9a52766984ecb9a96cc1e5740ae9d78 (patch) | |
tree | 7cf5203513490cb91de50813dfb5015b4f873256 /sys/amd64 | |
parent | a2e0f77d8f100b139a19a4fc8ecece7356b6afdc (diff) | |
download | FreeBSD-src-a152234cf9a52766984ecb9a96cc1e5740ae9d78.zip FreeBSD-src-a152234cf9a52766984ecb9a96cc1e5740ae9d78.tar.gz |
Complete the transition from pmap_page_protect() to pmap_remove_write().
Originally, I had adopted sparc64's name, pmap_clear_write(), for the
function that is now pmap_remove_write(). However, this function is more
like pmap_remove_all() than like pmap_clear_modify() or
pmap_clear_reference(), hence, the name change.
The higher-level rationale behind this change is described in
src/sys/amd64/amd64/pmap.c revision 1.567. The short version is that I'm
trying to clean up and fix our support for execute access.
Reviewed by: marcel@ (ia64)
Diffstat (limited to 'sys/amd64')
-rw-r--r-- | sys/amd64/amd64/pmap.c | 19 |
1 files changed, 1 insertions, 18 deletions
diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c index bf24aec..1747d0b 100644 --- a/sys/amd64/amd64/pmap.c +++ b/sys/amd64/amd64/pmap.c @@ -2972,7 +2972,7 @@ pmap_is_prefaultable(pmap_t pmap, vm_offset_t addr) * Clear the write and modified bits in each of the given page's mappings. */ void -pmap_clear_write(vm_page_t m) +pmap_remove_write(vm_page_t m) { pv_entry_t pv; pmap_t pmap; @@ -3002,23 +3002,6 @@ retry: } /* - * pmap_page_protect: - * - * Lower the permission for all mappings to a given page. - */ -void -pmap_page_protect(vm_page_t m, vm_prot_t prot) -{ - if ((prot & VM_PROT_WRITE) == 0) { - if (prot & (VM_PROT_READ | VM_PROT_EXECUTE)) { - pmap_clear_write(m); - } else { - pmap_remove_all(m); - } - } -} - -/* * pmap_ts_referenced: * * Return a count of reference bits for a page, clearing those bits. |