Module Name: src
Committed By: simonb
Date: Sun Jul 25 06:00:32 UTC 2021
Modified Files:
src/sys/kern: subr_pool.c
src/sys/sys: pool.h
Log Message:
Add accessor functions to get the number of gets and puts on pools and
pool caches.
To generate a diff of this commit:
cvs rdiff -u -r1.276 -r1.277 src/sys/kern/subr_pool.c
cvs rdiff -u -r1.93 -r1.94 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.276 src/sys/kern/subr_pool.c:1.277
--- src/sys/kern/subr_pool.c:1.276 Wed Feb 24 05:36:02 2021
+++ src/sys/kern/subr_pool.c Sun Jul 25 06:00:31 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: subr_pool.c,v 1.276 2021/02/24 05:36:02 mrg Exp $ */
+/* $NetBSD: subr_pool.c,v 1.277 2021/07/25 06:00:31 simonb 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.276 2021/02/24 05:36:02 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: subr_pool.c,v 1.277 2021/07/25 06:00:31 simonb Exp $");
#ifdef _KERNEL_OPT
#include "opt_ddb.h"
@@ -1609,6 +1609,20 @@ pool_sethardlimit(struct pool *pp, int n
mutex_exit(&pp->pr_lock);
}
+unsigned int
+pool_nget(struct pool *pp)
+{
+
+ return pp->pr_nget;
+}
+
+unsigned int
+pool_nput(struct pool *pp)
+{
+
+ return pp->pr_nput;
+}
+
/*
* Release all complete pages that have not been used recently.
*
@@ -2459,6 +2473,20 @@ pool_cache_prime(pool_cache_t pc, int n)
pool_prime(&pc->pc_pool, n);
}
+unsigned int
+pool_cache_nget(pool_cache_t pc)
+{
+
+ return pool_nget(&pc->pc_pool);
+}
+
+unsigned int
+pool_cache_nput(pool_cache_t pc)
+{
+
+ return pool_nput(&pc->pc_pool);
+}
+
/*
* pool_pcg_get:
*
Index: src/sys/sys/pool.h
diff -u src/sys/sys/pool.h:1.93 src/sys/sys/pool.h:1.94
--- src/sys/sys/pool.h:1.93 Wed Feb 24 06:11:38 2021
+++ src/sys/sys/pool.h Sun Jul 25 06:00:31 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: pool.h,v 1.93 2021/02/24 06:11:38 simonb Exp $ */
+/* $NetBSD: pool.h,v 1.94 2021/07/25 06:00:31 simonb Exp $ */
/*-
* Copyright (c) 1997, 1998, 1999, 2000, 2007, 2020
@@ -319,6 +319,9 @@ bool pool_drain(struct pool **);
int pool_totalpages(void);
int pool_totalpages_locked(void);
+unsigned int pool_nget(struct pool *);
+unsigned int pool_nput(struct pool *);
+
/*
* Debugging and diagnostic aides.
*/
@@ -353,6 +356,9 @@ void pool_cache_sethardlimit(pool_cache
void pool_cache_prime(pool_cache_t, int);
void pool_cache_cpu_init(struct cpu_info *);
+unsigned int pool_cache_nget(pool_cache_t);
+unsigned int pool_cache_nput(pool_cache_t);
+
#define pool_cache_get(pc, f) pool_cache_get_paddr((pc), (f), NULL)
#define pool_cache_put(pc, o) pool_cache_put_paddr((pc), (o), \
POOL_PADDR_INVALID)