summaryrefslogtreecommitdiffstats
path: root/sys/powerpc
diff options
context:
space:
mode:
authorattilio <attilio@FreeBSD.org>2013-02-27 18:12:13 +0000
committerattilio <attilio@FreeBSD.org>2013-02-27 18:12:13 +0000
commit8d28f9479090da520ef392412da9129ec48f85ea (patch)
tree960a120b0bfa6e8ab680fe148604e67ac3880e7d /sys/powerpc
parent5661e1fe461be2da03359fdaaf886b1a1155062b (diff)
downloadFreeBSD-src-8d28f9479090da520ef392412da9129ec48f85ea.zip
FreeBSD-src-8d28f9479090da520ef392412da9129ec48f85ea.tar.gz
Merge from vmobj-rwlock:
VM_OBJECT_LOCKED() macro is only used to implement a custom version of lock assertions right now (which likely spread out thanks to copy and paste). Remove it and implement actual assertions. Sponsored by: EMC / Isilon storage division Reviewed by: alc Tested by: pho
Diffstat (limited to 'sys/powerpc')
-rw-r--r--sys/powerpc/aim/mmu_oea.c5
-rw-r--r--sys/powerpc/aim/mmu_oea64.c5
-rw-r--r--sys/powerpc/booke/pmap.c5
3 files changed, 6 insertions, 9 deletions
diff --git a/sys/powerpc/aim/mmu_oea.c b/sys/powerpc/aim/mmu_oea.c
index 24350c4..e0af4e5 100644
--- a/sys/powerpc/aim/mmu_oea.c
+++ b/sys/powerpc/aim/mmu_oea.c
@@ -1121,9 +1121,8 @@ moea_enter_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot,
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, MA_OWNED);
/* XXX change the pvo head for fake pages */
if ((m->oflags & VPO_UNMANAGED) != 0) {
diff --git a/sys/powerpc/aim/mmu_oea64.c b/sys/powerpc/aim/mmu_oea64.c
index 0d77b57..296b546 100644
--- a/sys/powerpc/aim/mmu_oea64.c
+++ b/sys/powerpc/aim/mmu_oea64.c
@@ -1183,9 +1183,8 @@ moea64_enter(mmu_t mmu, pmap_t pmap, vm_offset_t va, vm_page_t m,
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, MA_OWNED);
/* XXX change the pvo head for fake pages */
if ((m->oflags & VPO_UNMANAGED) != 0) {
diff --git a/sys/powerpc/booke/pmap.c b/sys/powerpc/booke/pmap.c
index 5172009..8e0b76f 100644
--- a/sys/powerpc/booke/pmap.c
+++ b/sys/powerpc/booke/pmap.c
@@ -1560,9 +1560,8 @@ mmu_booke_enter_locked(mmu_t mmu, pmap_t pmap, vm_offset_t va, vm_page_t m,
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, MA_OWNED);
PMAP_LOCK_ASSERT(pmap, MA_OWNED);
OpenPOWER on IntegriCloud