svn commit: r270441 - in stable/10/sys: i386/i386 i386/xen sparc64/sparc64
Konstantin Belousov
kib at FreeBSD.org
Sun Aug 24 07:59:02 UTC 2014
Author: kib
Date: Sun Aug 24 07:59:01 2014
New Revision: 270441
URL: http://svnweb.freebsd.org/changeset/base/270441
Log:
MFC r270038:
Complete r254667, do not destroy pmap lock if KVA allocation failed.
Modified:
stable/10/sys/i386/i386/pmap.c
stable/10/sys/i386/xen/pmap.c
stable/10/sys/sparc64/sparc64/pmap.c
Directory Properties:
stable/10/ (props changed)
Modified: stable/10/sys/i386/i386/pmap.c
==============================================================================
--- stable/10/sys/i386/i386/pmap.c Sun Aug 24 07:57:50 2014 (r270440)
+++ stable/10/sys/i386/i386/pmap.c Sun Aug 24 07:59:01 2014 (r270441)
@@ -1755,10 +1755,8 @@ pmap_pinit(pmap_t pmap)
*/
if (pmap->pm_pdir == NULL) {
pmap->pm_pdir = (pd_entry_t *)kva_alloc(NBPTD);
- if (pmap->pm_pdir == NULL) {
- PMAP_LOCK_DESTROY(pmap);
+ if (pmap->pm_pdir == NULL)
return (0);
- }
#ifdef PAE
pmap->pm_pdpt = uma_zalloc(pdptzone, M_WAITOK | M_ZERO);
KASSERT(((vm_offset_t)pmap->pm_pdpt &
Modified: stable/10/sys/i386/xen/pmap.c
==============================================================================
--- stable/10/sys/i386/xen/pmap.c Sun Aug 24 07:57:50 2014 (r270440)
+++ stable/10/sys/i386/xen/pmap.c Sun Aug 24 07:59:01 2014 (r270441)
@@ -1459,7 +1459,6 @@ pmap_pinit(pmap_t pmap)
if (pmap->pm_pdir == NULL) {
pmap->pm_pdir = (pd_entry_t *)kva_alloc(NBPTD);
if (pmap->pm_pdir == NULL) {
- PMAP_LOCK_DESTROY(pmap);
#ifdef HAMFISTED_LOCKING
mtx_unlock(&createdelete_lock);
#endif
Modified: stable/10/sys/sparc64/sparc64/pmap.c
==============================================================================
--- stable/10/sys/sparc64/sparc64/pmap.c Sun Aug 24 07:57:50 2014 (r270440)
+++ stable/10/sys/sparc64/sparc64/pmap.c Sun Aug 24 07:59:01 2014 (r270441)
@@ -1209,11 +1209,9 @@ pmap_pinit(pmap_t pm)
*/
if (pm->pm_tsb == NULL) {
pm->pm_tsb = (struct tte *)kva_alloc(TSB_BSIZE);
- if (pm->pm_tsb == NULL) {
- PMAP_LOCK_DESTROY(pm);
+ if (pm->pm_tsb == NULL)
return (0);
}
- }
/*
* Allocate an object for it.
More information about the svn-src-all
mailing list