Module Name:    src
Committed By:   maxv
Date:           Tue Mar 26 18:31:30 UTC 2019

Modified Files:
        src/sys/kern: subr_pool.c
        src/sys/sys: pool.h

Log Message:
Remove POOL_SUBPAGE, it is unused, undocumented, and adds confusion.


To generate a diff of this commit:
cvs rdiff -u -r1.243 -r1.244 src/sys/kern/subr_pool.c
cvs rdiff -u -r1.85 -r1.86 src/sys/sys/pool.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/kern/subr_pool.c
diff -u src/sys/kern/subr_pool.c:1.243 src/sys/kern/subr_pool.c:1.244
--- src/sys/kern/subr_pool.c:1.243	Mon Mar 18 20:34:48 2019
+++ src/sys/kern/subr_pool.c	Tue Mar 26 18:31:30 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: subr_pool.c,v 1.243 2019/03/18 20:34:48 maxv Exp $	*/
+/*	$NetBSD: subr_pool.c,v 1.244 2019/03/26 18:31:30 maxv Exp $	*/
 
 /*
  * Copyright (c) 1997, 1999, 2000, 2002, 2007, 2008, 2010, 2014, 2015, 2018
@@ -33,7 +33,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: subr_pool.c,v 1.243 2019/03/18 20:34:48 maxv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: subr_pool.c,v 1.244 2019/03/26 18:31:30 maxv Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_ddb.h"
@@ -82,11 +82,6 @@ static struct pool phpool[PHPOOL_MAX];
 #define	PHPOOL_FREELIST_NELEM(idx) \
 	(((idx) == 0) ? 0 : BITMAP_SIZE * (1 << (idx)))
 
-#ifdef POOL_SUBPAGE
-/* Pool of subpages for use by normal pools. */
-static struct pool psppool;
-#endif
-
 #if defined(KASAN)
 #define POOL_REDZONE
 #endif
@@ -545,10 +540,6 @@ pool_subsystem_init(void)
 		pool_init(&phpool[idx], sz, 0, 0, 0,
 		    phpool_names[idx], &pool_allocator_meta, IPL_VM);
 	}
-#ifdef POOL_SUBPAGE
-	pool_init(&psppool, POOL_SUBPAGE, POOL_SUBPAGE, 0,
-	    PR_RECURSIVE, "psppool", &pool_allocator_meta, IPL_VM);
-#endif
 
 	size = sizeof(pcg_t) +
 	    (PCG_NOBJECTS_NORMAL - 1) * sizeof(pcgpair_t);
@@ -659,14 +650,7 @@ pool_init(struct pool *pp, size_t size, 
 
 	if (palloc == NULL)
 		palloc = &pool_allocator_kmem;
-#ifdef POOL_SUBPAGE
-	if (size > palloc->pa_pagesz) {
-		if (palloc == &pool_allocator_kmem)
-			palloc = &pool_allocator_kmem_fullpage;
-		else if (palloc == &pool_allocator_nointr)
-			palloc = &pool_allocator_nointr_fullpage;
-	}
-#endif /* POOL_SUBPAGE */
+
 	if (!cold)
 		mutex_enter(&pool_allocator_lock);
 	if (palloc->pa_refcnt++ == 0) {
@@ -2692,50 +2676,17 @@ pool_cache_transfer(pool_cache_t pc)
 void	*pool_page_alloc(struct pool *, int);
 void	pool_page_free(struct pool *, void *);
 
-#ifdef POOL_SUBPAGE
-struct pool_allocator pool_allocator_kmem_fullpage = {
-	.pa_alloc = pool_page_alloc,
-	.pa_free = pool_page_free,
-	.pa_pagesz = 0
-};
-#else
 struct pool_allocator pool_allocator_kmem = {
 	.pa_alloc = pool_page_alloc,
 	.pa_free = pool_page_free,
 	.pa_pagesz = 0
 };
-#endif
 
-#ifdef POOL_SUBPAGE
-struct pool_allocator pool_allocator_nointr_fullpage = {
-	.pa_alloc = pool_page_alloc,
-	.pa_free = pool_page_free,
-	.pa_pagesz = 0
-};
-#else
 struct pool_allocator pool_allocator_nointr = {
 	.pa_alloc = pool_page_alloc,
 	.pa_free = pool_page_free,
 	.pa_pagesz = 0
 };
-#endif
-
-#ifdef POOL_SUBPAGE
-void	*pool_subpage_alloc(struct pool *, int);
-void	pool_subpage_free(struct pool *, void *);
-
-struct pool_allocator pool_allocator_kmem = {
-	.pa_alloc = pool_subpage_alloc,
-	.pa_free = pool_subpage_free,
-	.pa_pagesz = POOL_SUBPAGE
-};
-
-struct pool_allocator pool_allocator_nointr = {
-	.pa_alloc = pool_subpage_alloc,
-	.pa_free = pool_subpage_free,
-	.pa_pagesz = POOL_SUBPAGE
-};
-#endif /* POOL_SUBPAGE */
 
 struct pool_allocator pool_allocator_big[] = {
 	{
@@ -3024,23 +2975,6 @@ pool_cache_redzone_check(pool_cache_t pc
 
 #endif /* POOL_REDZONE */
 
-
-#ifdef POOL_SUBPAGE
-/* Sub-page allocator, for machines with large hardware pages. */
-void *
-pool_subpage_alloc(struct pool *pp, int flags)
-{
-	return pool_get(&psppool, flags);
-}
-
-void
-pool_subpage_free(struct pool *pp, void *v)
-{
-	pool_put(&psppool, v);
-}
-
-#endif /* POOL_SUBPAGE */
-
 #if defined(DDB)
 static bool
 pool_in_page(struct pool *pp, struct pool_item_header *ph, uintptr_t addr)

Index: src/sys/sys/pool.h
diff -u src/sys/sys/pool.h:1.85 src/sys/sys/pool.h:1.86
--- src/sys/sys/pool.h:1.85	Sun Mar 17 19:57:54 2019
+++ src/sys/sys/pool.h	Tue Mar 26 18:31:30 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: pool.h,v 1.85 2019/03/17 19:57:54 maxv Exp $	*/
+/*	$NetBSD: pool.h,v 1.86 2019/03/26 18:31:30 maxv Exp $	*/
 
 /*-
  * Copyright (c) 1997, 1998, 1999, 2000, 2007 The NetBSD Foundation, Inc.
@@ -287,11 +287,6 @@ typedef struct pool_cache *pool_cache_t;
 extern struct pool_allocator pool_allocator_kmem;
 extern struct pool_allocator pool_allocator_nointr;
 extern struct pool_allocator pool_allocator_meta;
-#ifdef POOL_SUBPAGE
-/* The above are subpage allocators in this case. */
-extern struct pool_allocator pool_allocator_kmem_fullpage;
-extern struct pool_allocator pool_allocator_nointr_fullpage;
-#endif
 
 void		pool_subsystem_init(void);
 

Reply via email to