comparison src/core/ngx_slab.c @ 6825:f6beb55792de

Slab: fixed the number of pages calculation. When estimating the number of pages, do not count memory for slots. In some cases this gives one extra usable memory page.
author Ruslan Ermilov <ru@nginx.com>
date Wed, 07 Dec 2016 22:25:37 +0300
parents ea12328518dc
children d0404c9a7675
comparison
equal deleted inserted replaced
6824:ea12328518dc 6825:f6beb55792de
118 slots[i].next = &slots[i]; 118 slots[i].next = &slots[i];
119 slots[i].prev = 0; 119 slots[i].prev = 0;
120 } 120 }
121 121
122 p += n * sizeof(ngx_slab_page_t); 122 p += n * sizeof(ngx_slab_page_t);
123 size -= n * sizeof(ngx_slab_page_t);
123 124
124 pages = (ngx_uint_t) (size / (ngx_pagesize + sizeof(ngx_slab_page_t))); 125 pages = (ngx_uint_t) (size / (ngx_pagesize + sizeof(ngx_slab_page_t)));
125 126
126 pool->pages = (ngx_slab_page_t *) p; 127 pool->pages = (ngx_slab_page_t *) p;
127 ngx_memzero(pool->pages, pages * sizeof(ngx_slab_page_t)); 128 ngx_memzero(pool->pages, pages * sizeof(ngx_slab_page_t));