aboutsummaryrefslogtreecommitdiff
path: root/src/core/ngx_slab.c
diff options
context:
space:
mode:
authorRuslan Ermilov <ru@nginx.com>2016-12-07 22:25:37 +0300
committerRuslan Ermilov <ru@nginx.com>2016-12-07 22:25:37 +0300
commit5abd39a19734e22a4044af03ede4fdb4b0285d9c (patch)
treeb357b09c84750d7941b0ab3975c33dc61d41aba6 /src/core/ngx_slab.c
parent9ccf719be6b922715fc6bdfabf24742eeec46ba4 (diff)
downloadnginx-5abd39a19734e22a4044af03ede4fdb4b0285d9c.tar.gz
nginx-5abd39a19734e22a4044af03ede4fdb4b0285d9c.zip
Slab: free pages statistics.
Diffstat (limited to 'src/core/ngx_slab.c')
-rw-r--r--src/core/ngx_slab.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/core/ngx_slab.c b/src/core/ngx_slab.c
index cc2e0b650..6695bb327 100644
--- a/src/core/ngx_slab.c
+++ b/src/core/ngx_slab.c
@@ -154,6 +154,7 @@ ngx_slab_init(ngx_slab_pool_t *pool)
}
pool->last = pool->pages + pages;
+ pool->pfree = pages;
pool->log_nomem = 1;
pool->log_ctx = &pool->zero;
@@ -691,6 +692,8 @@ ngx_slab_alloc_pages(ngx_slab_pool_t *pool, ngx_uint_t pages)
page->next = NULL;
page->prev = NGX_SLAB_PAGE;
+ pool->pfree -= pages;
+
if (--pages == 0) {
return page;
}
@@ -721,6 +724,8 @@ ngx_slab_free_pages(ngx_slab_pool_t *pool, ngx_slab_page_t *page,
{
ngx_slab_page_t *prev, *join;
+ pool->pfree += pages;
+
page->slab = pages--;
if (pages) {