Date: Thu, 18 Jan 2018 11:01:41 +0000 (UTC) From: Konstantin Belousov <kib@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r328116 - head/sys/amd64/amd64 Message-ID: <201801181101.w0IB1ff0040770@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: kib Date: Thu Jan 18 11:01:41 2018 New Revision: 328116 URL: https://svnweb.freebsd.org/changeset/base/328116 Log: Remove the 'last' argument from the pmap_pti_free_page(). It is in fact unused. Noted and reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 13 days Modified: head/sys/amd64/amd64/pmap.c Modified: head/sys/amd64/amd64/pmap.c ============================================================================== --- head/sys/amd64/amd64/pmap.c Thu Jan 18 10:52:31 2018 (r328115) +++ head/sys/amd64/amd64/pmap.c Thu Jan 18 11:01:41 2018 (r328116) @@ -7550,17 +7550,16 @@ pmap_pti_alloc_page(void) } static bool -pmap_pti_free_page(vm_page_t m, bool last) +pmap_pti_free_page(vm_page_t m) { + KASSERT(m->wire_count > 0, ("page %p not wired", m)); m->wire_count--; - if (m->wire_count == 0 || last) { - KASSERT(m->wire_count == 0, ("page %p wired", m)); - atomic_subtract_int(&vm_cnt.v_wire_count, 1); - vm_page_free_zero(m); - return (true); - } - return (false); + if (m->wire_count != 0) + return (false); + atomic_subtract_int(&vm_cnt.v_wire_count, 1); + vm_page_free_zero(m); + return (true); } extern char kernphys[], etext[]; @@ -7626,7 +7625,7 @@ pmap_pti_pdpe(vm_offset_t va) panic("pml4 alloc after finalization\n"); m = pmap_pti_alloc_page(); if (*pml4e != 0) { - pmap_pti_free_page(m, true); + pmap_pti_free_page(m); mphys = *pml4e & ~PAGE_MASK; } else { mphys = VM_PAGE_TO_PHYS(m); @@ -7658,7 +7657,7 @@ pmap_pti_unwire_pde(void *pde, bool only_ref) m = PHYS_TO_VM_PAGE(DMAP_TO_PHYS((uintptr_t)pde)); MPASS(m->wire_count > 0); MPASS(only_ref || m->wire_count > 1); - pmap_pti_free_page(m, false); + pmap_pti_free_page(m); } static void @@ -7670,7 +7669,7 @@ pmap_pti_unwire_pte(void *pte, vm_offset_t va) VM_OBJECT_ASSERT_WLOCKED(pti_obj); m = PHYS_TO_VM_PAGE(DMAP_TO_PHYS((uintptr_t)pte)); MPASS(m->wire_count > 0); - if (pmap_pti_free_page(m, false)) { + if (pmap_pti_free_page(m)) { pde = pmap_pti_pde(va); MPASS((*pde & (X86_PG_PS | X86_PG_V)) == X86_PG_V); *pde = 0; @@ -7693,7 +7692,7 @@ pmap_pti_pde(vm_offset_t va) if (*pdpe == 0) { m = pmap_pti_alloc_page(); if (*pdpe != 0) { - pmap_pti_free_page(m, true); + pmap_pti_free_page(m); MPASS((*pdpe & X86_PG_PS) == 0); mphys = *pdpe & ~PAGE_MASK; } else { @@ -7729,7 +7728,7 @@ pmap_pti_pte(vm_offset_t va, bool *unwire_pde) if (*pde == 0) { m = pmap_pti_alloc_page(); if (*pde != 0) { - pmap_pti_free_page(m, true); + pmap_pti_free_page(m); MPASS((*pde & X86_PG_PS) == 0); mphys = *pde & ~(PAGE_MASK | pg_nx); } else {
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201801181101.w0IB1ff0040770>