Date: Wed, 20 Feb 2013 10:51:34 +0000 (UTC) From: Attilio Rao <attilio@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r247023 - in user/attilio/vmobj-rwlock/sys: amd64/amd64 i386/i386 i386/xen powerpc/aim powerpc/booke sparc64/sparc64 vm Message-ID: <201302201051.r1KApYUs039303@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: attilio Date: Wed Feb 20 10:51:34 2013 New Revision: 247023 URL: http://svnweb.freebsd.org/changeset/base/247023 Log: There is no need to use VM_OBJECT_LOCKED() as the assertion won't make the check available in any case if INVARIANTS is switched off. Remove VM_OBJECT_LOCKED(). Modified: user/attilio/vmobj-rwlock/sys/amd64/amd64/pmap.c user/attilio/vmobj-rwlock/sys/i386/i386/pmap.c user/attilio/vmobj-rwlock/sys/i386/xen/pmap.c user/attilio/vmobj-rwlock/sys/powerpc/aim/mmu_oea.c user/attilio/vmobj-rwlock/sys/powerpc/aim/mmu_oea64.c user/attilio/vmobj-rwlock/sys/powerpc/booke/pmap.c user/attilio/vmobj-rwlock/sys/sparc64/sparc64/pmap.c user/attilio/vmobj-rwlock/sys/vm/vm_object.h Modified: user/attilio/vmobj-rwlock/sys/amd64/amd64/pmap.c ============================================================================== --- user/attilio/vmobj-rwlock/sys/amd64/amd64/pmap.c Wed Feb 20 10:40:27 2013 (r247022) +++ user/attilio/vmobj-rwlock/sys/amd64/amd64/pmap.c Wed Feb 20 10:51:34 2013 (r247023) @@ -3492,9 +3492,8 @@ pmap_enter(pmap_t pmap, vm_offset_t va, KASSERT((m->oflags & VPO_UNMANAGED) != 0 || va < kmi.clean_sva || va >= kmi.clean_eva, ("pmap_enter: managed mapping within the clean submap")); - KASSERT((m->oflags & (VPO_UNMANAGED | VPO_BUSY)) != 0 || - VM_OBJECT_LOCKED(m->object), - ("pmap_enter: page %p is not busy", m)); + if ((m->oflags & (VPO_UNMANAGED | VPO_BUSY)) == 0) + VM_OBJECT_LOCK_ASSERT(m->object, RA_WLOCKED); pa = VM_PAGE_TO_PHYS(m); newpte = (pt_entry_t)(pa | PG_A | PG_V); if ((access & VM_PROT_WRITE) != 0) Modified: user/attilio/vmobj-rwlock/sys/i386/i386/pmap.c ============================================================================== --- user/attilio/vmobj-rwlock/sys/i386/i386/pmap.c Wed Feb 20 10:40:27 2013 (r247022) +++ user/attilio/vmobj-rwlock/sys/i386/i386/pmap.c Wed Feb 20 10:51:34 2013 (r247023) @@ -3456,9 +3456,8 @@ pmap_enter(pmap_t pmap, vm_offset_t va, KASSERT(va < UPT_MIN_ADDRESS || va >= UPT_MAX_ADDRESS, ("pmap_enter: invalid to pmap_enter page table pages (va: 0x%x)", va)); - KASSERT((m->oflags & (VPO_UNMANAGED | VPO_BUSY)) != 0 || - VM_OBJECT_LOCKED(m->object), - ("pmap_enter: page %p is not busy", m)); + if ((m->oflags & (VPO_UNMANAGED | VPO_BUSY)) == 0) + VM_OBJECT_LOCK_ASSERT(m->object, RA_WLOCKED); mpte = NULL; Modified: user/attilio/vmobj-rwlock/sys/i386/xen/pmap.c ============================================================================== --- user/attilio/vmobj-rwlock/sys/i386/xen/pmap.c Wed Feb 20 10:40:27 2013 (r247022) +++ user/attilio/vmobj-rwlock/sys/i386/xen/pmap.c Wed Feb 20 10:51:34 2013 (r247023) @@ -2666,9 +2666,8 @@ pmap_enter(pmap_t pmap, vm_offset_t va, KASSERT(va < UPT_MIN_ADDRESS || va >= UPT_MAX_ADDRESS, ("pmap_enter: invalid to pmap_enter page table pages (va: 0x%x)", va)); - KASSERT((m->oflags & (VPO_UNMANAGED | VPO_BUSY)) != 0 || - VM_OBJECT_LOCKED(m->object), - ("pmap_enter: page %p is not busy", m)); + if ((m->oflags & (VPO_UNMANAGED | VPO_BUSY)) == 0) + VM_OBJECT_LOCK_ASSERT(m->object, RA_WLOCKED); mpte = NULL; Modified: user/attilio/vmobj-rwlock/sys/powerpc/aim/mmu_oea.c ============================================================================== --- user/attilio/vmobj-rwlock/sys/powerpc/aim/mmu_oea.c Wed Feb 20 10:40:27 2013 (r247022) +++ user/attilio/vmobj-rwlock/sys/powerpc/aim/mmu_oea.c Wed Feb 20 10:51:34 2013 (r247023) @@ -1122,9 +1122,8 @@ moea_enter_locked(pmap_t pmap, vm_offset if (pmap_bootstrapped) rw_assert(&pvh_global_lock, RA_WLOCKED); PMAP_LOCK_ASSERT(pmap, MA_OWNED); - KASSERT((m->oflags & (VPO_UNMANAGED | VPO_BUSY)) != 0 || - VM_OBJECT_LOCKED(m->object), - ("moea_enter_locked: page %p is not busy", m)); + if ((m->oflags & (VPO_UNMANAGED | VPO_BUSY)) == 0) + VM_OBJECT_LOCK_ASSERT(m->object, RA_WLOCKED); /* XXX change the pvo head for fake pages */ if ((m->oflags & VPO_UNMANAGED) != 0) { Modified: user/attilio/vmobj-rwlock/sys/powerpc/aim/mmu_oea64.c ============================================================================== --- user/attilio/vmobj-rwlock/sys/powerpc/aim/mmu_oea64.c Wed Feb 20 10:40:27 2013 (r247022) +++ user/attilio/vmobj-rwlock/sys/powerpc/aim/mmu_oea64.c Wed Feb 20 10:51:34 2013 (r247023) @@ -1184,9 +1184,8 @@ moea64_enter(mmu_t mmu, pmap_t pmap, vm_ pvo_flags = PVO_MANAGED; } - KASSERT((m->oflags & (VPO_UNMANAGED | VPO_BUSY)) != 0 || - VM_OBJECT_LOCKED(m->object), - ("moea64_enter: page %p is not busy", m)); + if ((m->oflags & (VPO_UNMANAGED | VPO_BUSY)) == 0) + VM_OBJECT_LOCK_ASSERT(m->object, RA_WLOCKED); /* XXX change the pvo head for fake pages */ if ((m->oflags & VPO_UNMANAGED) != 0) { Modified: user/attilio/vmobj-rwlock/sys/powerpc/booke/pmap.c ============================================================================== --- user/attilio/vmobj-rwlock/sys/powerpc/booke/pmap.c Wed Feb 20 10:40:27 2013 (r247022) +++ user/attilio/vmobj-rwlock/sys/powerpc/booke/pmap.c Wed Feb 20 10:51:34 2013 (r247023) @@ -1561,9 +1561,8 @@ mmu_booke_enter_locked(mmu_t mmu, pmap_t KASSERT((va <= VM_MAXUSER_ADDRESS), ("mmu_booke_enter_locked: user pmap, non user va")); } - KASSERT((m->oflags & (VPO_UNMANAGED | VPO_BUSY)) != 0 || - VM_OBJECT_LOCKED(m->object), - ("mmu_booke_enter_locked: page %p is not busy", m)); + if ((m->oflags & (VPO_UNMANAGED | VPO_BUSY)) == 0) + VM_OBJECT_LOCK_ASSERT(m->object, RA_WLOCKED); PMAP_LOCK_ASSERT(pmap, MA_OWNED); Modified: user/attilio/vmobj-rwlock/sys/sparc64/sparc64/pmap.c ============================================================================== --- user/attilio/vmobj-rwlock/sys/sparc64/sparc64/pmap.c Wed Feb 20 10:40:27 2013 (r247022) +++ user/attilio/vmobj-rwlock/sys/sparc64/sparc64/pmap.c Wed Feb 20 10:51:34 2013 (r247023) @@ -1494,9 +1494,8 @@ pmap_enter_locked(pmap_t pm, vm_offset_t rw_assert(&tte_list_global_lock, RA_WLOCKED); PMAP_LOCK_ASSERT(pm, MA_OWNED); - KASSERT((m->oflags & (VPO_UNMANAGED | VPO_BUSY)) != 0 || - VM_OBJECT_LOCKED(m->object), - ("pmap_enter_locked: page %p is not busy", m)); + if ((m->oflags & (VPO_UNMANAGED | VPO_BUSY)) == 0) + VM_OBJECT_LOCK_ASSERT(m->object, RA_WLOCKED); PMAP_STATS_INC(pmap_nenter); pa = VM_PAGE_TO_PHYS(m); Modified: user/attilio/vmobj-rwlock/sys/vm/vm_object.h ============================================================================== --- user/attilio/vmobj-rwlock/sys/vm/vm_object.h Wed Feb 20 10:40:27 2013 (r247022) +++ user/attilio/vmobj-rwlock/sys/vm/vm_object.h Wed Feb 20 10:51:34 2013 (r247023) @@ -210,8 +210,6 @@ extern struct vm_object kmem_object_stor rw_assert(&(object)->lock, (type)) #define VM_OBJECT_LOCK_INIT(object, name) \ rw_init_flags(&(object)->lock, (name), RW_DUPOK) -#define VM_OBJECT_LOCKED(object) \ - rw_wowned(&(object)->lock) #define VM_OBJECT_SLEEP(wchan, object, pri, wmesg, timo) \ rw_sleep((wchan), &(object)->lock, (pri), (wmesg), (timo)) #define VM_OBJECT_TRYLOCK(object) \
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201302201051.r1KApYUs039303>