PERFORCE change 139375 for review

Warner Losh imp at FreeBSD.org
Fri Apr 4 20:43:57 UTC 2008


http://perforce.freebsd.org/chv.cgi?CH=139375

Change 139375 by imp at imp_paco-paco on 2008/04/04 20:42:55

	IFC @139373

Affected files ...

.. //depot/projects/arm/src/sys/conf/Makefile.arm#24 integrate
.. //depot/projects/arm/src/sys/i386/i386/pmap.c#39 integrate
.. //depot/projects/arm/src/sys/kern/kern_mbuf.c#20 integrate
.. //depot/projects/arm/src/sys/vm/uma.h#6 integrate
.. //depot/projects/arm/src/sys/vm/uma_core.c#16 integrate
.. //depot/projects/arm/src/sys/vm/vm_map.c#21 integrate

Differences ...

==== //depot/projects/arm/src/sys/conf/Makefile.arm#24 (text+ko) ====

@@ -1,7 +1,7 @@
 # Makefile.arm -- with config changes.
 # Copyright 1990 W. Jolitz
 #	from: @(#)Makefile.i386	7.1 5/10/91
-# $FreeBSD: src/sys/conf/Makefile.arm,v 1.37 2008/04/04 17:35:24 raj Exp $
+# $FreeBSD: src/sys/conf/Makefile.arm,v 1.38 2008/04/04 19:33:09 imp Exp $
 #
 # Makefile for FreeBSD
 #

==== //depot/projects/arm/src/sys/i386/i386/pmap.c#39 (text+ko) ====

@@ -75,7 +75,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/i386/i386/pmap.c,v 1.613 2008/03/29 04:29:50 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/i386/i386/pmap.c,v 1.614 2008/04/04 18:41:11 alc Exp $");
 
 /*
  *	Manages physical address maps.
@@ -561,7 +561,9 @@
 static void *
 pmap_pdpt_allocf(uma_zone_t zone, int bytes, u_int8_t *flags, int wait)
 {
-	*flags = UMA_SLAB_PRIV;
+
+	/* Inform UMA that this allocator uses kernel_map/object. */
+	*flags = UMA_SLAB_KERNEL;
 	return (contigmalloc(PAGE_SIZE, M_PMAPPDPT, 0, 0x0ULL, 0xffffffffULL,
 	    1, 0));
 }

==== //depot/projects/arm/src/sys/kern/kern_mbuf.c#20 (text+ko) ====

@@ -26,7 +26,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/kern_mbuf.c,v 1.39 2008/03/16 10:58:05 rwatson Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/kern_mbuf.c,v 1.40 2008/04/04 18:41:12 alc Exp $");
 
 #include "opt_mac.h"
 #include "opt_param.h"
@@ -352,7 +352,8 @@
 mbuf_jumbo_alloc(uma_zone_t zone, int bytes, u_int8_t *flags, int wait)
 {
 
-	*flags = UMA_SLAB_PRIV;
+	/* Inform UMA that this allocator uses kernel_map/object. */
+	*flags = UMA_SLAB_KERNEL;
 	return (contigmalloc(bytes, M_JUMBOFRAME, wait, (vm_paddr_t)0,
 	    ~(vm_paddr_t)0, 1, 0));
 }

==== //depot/projects/arm/src/sys/vm/uma.h#6 (text+ko) ====

@@ -24,7 +24,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/vm/uma.h,v 1.31 2007/02/11 20:13:52 rwatson Exp $
+ * $FreeBSD: src/sys/vm/uma.h,v 1.32 2008/04/04 18:41:12 alc Exp $
  *
  */
 
@@ -488,6 +488,7 @@
  */
 #define UMA_SLAB_BOOT	0x01		/* Slab alloced from boot pages */
 #define UMA_SLAB_KMEM	0x02		/* Slab alloced from kmem_map */
+#define UMA_SLAB_KERNEL	0x04		/* Slab alloced from kernel_map */
 #define UMA_SLAB_PRIV	0x08		/* Slab alloced from priv allocator */
 #define UMA_SLAB_OFFP	0x10		/* Slab is managed separately  */
 #define UMA_SLAB_MALLOC	0x20		/* Slab is a large malloc slab */

==== //depot/projects/arm/src/sys/vm/uma_core.c#16 (text+ko) ====

@@ -48,7 +48,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/vm/uma_core.c,v 1.148 2007/10/11 20:11:27 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/vm/uma_core.c,v 1.149 2008/04/04 18:41:12 alc Exp $");
 
 /* I should really use ktr.. */
 /*
@@ -751,6 +751,8 @@
 
 			if (flags & UMA_SLAB_KMEM)
 				obj = kmem_object;
+			else if (flags & UMA_SLAB_KERNEL)
+				obj = kernel_object;
 			else
 				obj = NULL;
 			for (i = 0; i < keg->uk_ppera; i++)
@@ -871,6 +873,8 @@
 
 				if (flags & UMA_SLAB_KMEM)
 					obj = kmem_object;
+				else if (flags & UMA_SLAB_KERNEL)
+					obj = kernel_object;
 				else
 					obj = NULL;
 				for (i = 0; i < keg->uk_ppera; i++)

==== //depot/projects/arm/src/sys/vm/vm_map.c#21 (text+ko) ====

@@ -63,7 +63,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/vm/vm_map.c,v 1.393 2008/03/12 10:12:01 jeff Exp $");
+__FBSDID("$FreeBSD: src/sys/vm/vm_map.c,v 1.394 2008/04/04 19:14:58 alc Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -1459,8 +1459,8 @@
  *
  *	Preload read-only mappings for the given object's resident pages into
  *	the given map.  This eliminates the soft faults on process startup and
- *	immediately after an mmap(2).  Unless the given flags include
- *	MAP_PREFAULT_MADVISE, cached pages are not reactivated and mapped.
+ *	immediately after an mmap(2).  Because these are speculative mappings,
+ *	cached pages are not reactivated and mapped.
  */
 void
 vm_map_pmap_enter(vm_map_t map, vm_offset_t addr, vm_prot_t prot,


More information about the p4-projects mailing list