svn commit: r260211 - in user/alc/cachefree/sys: amd64/include arm/include i386/include ia64/include mips/include powerpc/include sparc64/include vm

Alan Cox alc at FreeBSD.org
Thu Jan 2 23:24:53 UTC 2014


Author: alc
Date: Thu Jan  2 23:24:50 2014
New Revision: 260211
URL: http://svnweb.freebsd.org/changeset/base/260211

Log:
  Retire VM_FREEPOOL_CACHE.
  
  Sponsored by:	EMC / Isilon Storage Division

Modified:
  user/alc/cachefree/sys/amd64/include/vmparam.h
  user/alc/cachefree/sys/arm/include/vmparam.h
  user/alc/cachefree/sys/i386/include/vmparam.h
  user/alc/cachefree/sys/ia64/include/vmparam.h
  user/alc/cachefree/sys/mips/include/vmparam.h
  user/alc/cachefree/sys/powerpc/include/vmparam.h
  user/alc/cachefree/sys/sparc64/include/vmparam.h
  user/alc/cachefree/sys/vm/vm_page.c
  user/alc/cachefree/sys/vm/vm_reserv.c

Modified: user/alc/cachefree/sys/amd64/include/vmparam.h
==============================================================================
--- user/alc/cachefree/sys/amd64/include/vmparam.h	Thu Jan  2 23:23:33 2014	(r260210)
+++ user/alc/cachefree/sys/amd64/include/vmparam.h	Thu Jan  2 23:24:50 2014	(r260211)
@@ -90,13 +90,12 @@
 #define	VM_PHYSSEG_MAX		31
 
 /*
- * Create three free page pools: VM_FREEPOOL_DEFAULT is the default pool
+ * Create two free page pools: VM_FREEPOOL_DEFAULT is the default pool
  * from which physical pages are allocated and VM_FREEPOOL_DIRECT is
  * the pool from which physical pages for page tables and small UMA
  * objects are allocated.
  */
-#define	VM_NFREEPOOL		3
-#define	VM_FREEPOOL_CACHE	2
+#define	VM_NFREEPOOL		2
 #define	VM_FREEPOOL_DEFAULT	0
 #define	VM_FREEPOOL_DIRECT	1
 

Modified: user/alc/cachefree/sys/arm/include/vmparam.h
==============================================================================
--- user/alc/cachefree/sys/arm/include/vmparam.h	Thu Jan  2 23:23:33 2014	(r260210)
+++ user/alc/cachefree/sys/arm/include/vmparam.h	Thu Jan  2 23:24:50 2014	(r260211)
@@ -82,18 +82,16 @@
 #define	VM_PHYSSEG_DENSE
 
 /*
- * Create two or three free page pools depending on the existence of a direct
+ * Create one or two free page pools depending on the existence of a direct
  * map: VM_FREEPOOL_DEFAULT is the default pool from which physical pages are
  * allocated, and VM_FREEPOOL_DIRECT is the pool from which physical pages for
  * small UMA objects are allocated.
  */
 #ifdef ARM_USE_SMALL_ALLOC
-#define	VM_NFREEPOOL		3
-#define	VM_FREEPOOL_CACHE	2
+#define	VM_NFREEPOOL		2
 #define	VM_FREEPOOL_DIRECT	1
 #else
-#define	VM_NFREEPOOL		2
-#define	VM_FREEPOOL_CACHE	1
+#define	VM_NFREEPOOL		1
 #define	VM_FREEPOOL_DIRECT	0
 #endif
 #define	VM_FREEPOOL_DEFAULT	0

Modified: user/alc/cachefree/sys/i386/include/vmparam.h
==============================================================================
--- user/alc/cachefree/sys/i386/include/vmparam.h	Thu Jan  2 23:23:33 2014	(r260210)
+++ user/alc/cachefree/sys/i386/include/vmparam.h	Thu Jan  2 23:24:50 2014	(r260211)
@@ -77,13 +77,12 @@
 #define	VM_PHYSSEG_MAX		17
 
 /*
- * Create two free page pools.  Since the i386 kernel virtual address
+ * Create one free page pool.  Since the i386 kernel virtual address
  * space does not include a mapping onto the machine's entire physical
  * memory, VM_FREEPOOL_DIRECT is defined as an alias for the default
  * pool, VM_FREEPOOL_DEFAULT.
  */
-#define	VM_NFREEPOOL		2
-#define	VM_FREEPOOL_CACHE	1
+#define	VM_NFREEPOOL		1
 #define	VM_FREEPOOL_DEFAULT	0
 #define	VM_FREEPOOL_DIRECT	0
 

Modified: user/alc/cachefree/sys/ia64/include/vmparam.h
==============================================================================
--- user/alc/cachefree/sys/ia64/include/vmparam.h	Thu Jan  2 23:23:33 2014	(r260210)
+++ user/alc/cachefree/sys/ia64/include/vmparam.h	Thu Jan  2 23:24:50 2014	(r260211)
@@ -80,13 +80,12 @@
 #define	VM_PHYSSEG_MAX		49
 
 /*
- * Create three free page pools: VM_FREEPOOL_DEFAULT is the default pool
+ * Create two free page pools: VM_FREEPOOL_DEFAULT is the default pool
  * from which physical pages are allocated and VM_FREEPOOL_DIRECT is
  * the pool from which physical pages for small UMA objects are
  * allocated.
  */
-#define	VM_NFREEPOOL		3
-#define	VM_FREEPOOL_CACHE	2
+#define	VM_NFREEPOOL		2
 #define	VM_FREEPOOL_DEFAULT	0
 #define	VM_FREEPOOL_DIRECT	1
 

Modified: user/alc/cachefree/sys/mips/include/vmparam.h
==============================================================================
--- user/alc/cachefree/sys/mips/include/vmparam.h	Thu Jan  2 23:23:33 2014	(r260210)
+++ user/alc/cachefree/sys/mips/include/vmparam.h	Thu Jan  2 23:24:50 2014	(r260211)
@@ -149,13 +149,12 @@
 #define	VM_PHYSSEG_SPARSE
 
 /*
- * Create three free page pools: VM_FREEPOOL_DEFAULT is the default pool
+ * Create two free page pools: VM_FREEPOOL_DEFAULT is the default pool
  * from which physical pages are allocated and VM_FREEPOOL_DIRECT is
  * the pool from which physical pages for small UMA objects are
  * allocated.
  */
-#define	VM_NFREEPOOL		3
-#define	VM_FREEPOOL_CACHE	2
+#define	VM_NFREEPOOL		2
 #define	VM_FREEPOOL_DEFAULT	0
 #define	VM_FREEPOOL_DIRECT	1
 

Modified: user/alc/cachefree/sys/powerpc/include/vmparam.h
==============================================================================
--- user/alc/cachefree/sys/powerpc/include/vmparam.h	Thu Jan  2 23:23:33 2014	(r260210)
+++ user/alc/cachefree/sys/powerpc/include/vmparam.h	Thu Jan  2 23:24:50 2014	(r260211)
@@ -136,13 +136,12 @@ struct pmap_physseg {
 #endif
 
 /*
- * Create three free page pools: VM_FREEPOOL_DEFAULT is the default pool
+ * Create two free page pools: VM_FREEPOOL_DEFAULT is the default pool
  * from which physical pages are allocated and VM_FREEPOOL_DIRECT is
  * the pool from which physical pages for small UMA objects are
  * allocated.
  */
-#define	VM_NFREEPOOL		3
-#define	VM_FREEPOOL_CACHE	2
+#define	VM_NFREEPOOL		2
 #define	VM_FREEPOOL_DEFAULT	0
 #define	VM_FREEPOOL_DIRECT	1
 

Modified: user/alc/cachefree/sys/sparc64/include/vmparam.h
==============================================================================
--- user/alc/cachefree/sys/sparc64/include/vmparam.h	Thu Jan  2 23:23:33 2014	(r260210)
+++ user/alc/cachefree/sys/sparc64/include/vmparam.h	Thu Jan  2 23:24:50 2014	(r260211)
@@ -75,13 +75,12 @@
 #define	VM_PHYSSEG_MAX		64
 
 /*
- * Create three free page pools: VM_FREEPOOL_DEFAULT is the default pool
+ * Create two free page pools: VM_FREEPOOL_DEFAULT is the default pool
  * from which physical pages are allocated and VM_FREEPOOL_DIRECT is
  * the pool from which physical pages for small UMA objects are
  * allocated.
  */
-#define	VM_NFREEPOOL		3
-#define	VM_FREEPOOL_CACHE	2
+#define	VM_NFREEPOOL		2
 #define	VM_FREEPOOL_DEFAULT	0
 #define	VM_FREEPOOL_DIRECT	1
 

Modified: user/alc/cachefree/sys/vm/vm_page.c
==============================================================================
--- user/alc/cachefree/sys/vm/vm_page.c	Thu Jan  2 23:23:33 2014	(r260210)
+++ user/alc/cachefree/sys/vm/vm_page.c	Thu Jan  2 23:24:50 2014	(r260211)
@@ -2555,13 +2555,11 @@ vm_page_cache(vm_page_t m)
 	cnt.v_cache_count++;
 	PCPU_INC(cnt.v_tcached);
 #if VM_NRESERVLEVEL > 0
-	if (!vm_reserv_free_page(m)) {
+	if (!vm_reserv_free_page(m))
 #else
-	if (TRUE) {
+	if (TRUE)
 #endif
-		vm_phys_set_pool(VM_FREEPOOL_CACHE, m, 0);
 		vm_phys_free_pages(m, 0);
-	}
 	vm_page_free_wakeup();
 	mtx_unlock(&vm_page_queue_free_mtx);
 

Modified: user/alc/cachefree/sys/vm/vm_reserv.c
==============================================================================
--- user/alc/cachefree/sys/vm/vm_reserv.c	Thu Jan  2 23:23:33 2014	(r260210)
+++ user/alc/cachefree/sys/vm/vm_reserv.c	Thu Jan  2 23:24:50 2014	(r260211)
@@ -739,9 +739,6 @@ vm_reserv_free_page(vm_page_t m)
 	rv = vm_reserv_from_page(m);
 	if (rv->object == NULL)
 		return (FALSE);
-	if ((m->flags & PG_CACHED) != 0 && m->pool != VM_FREEPOOL_CACHE)
-		vm_phys_set_pool(VM_FREEPOOL_CACHE, rv->pages,
-		    VM_LEVEL_0_ORDER);
 	vm_reserv_depopulate(rv, m - rv->pages);
 	return (TRUE);
 }


More information about the svn-src-user mailing list