ktime_t ppp_st_max_wait; /* in nanoseconds */
unsigned long ppp_st_outofmem; /* # of out of mem requests */
/*
- * pointers to pools, may be vmalloc'd
+ * pointers to ptr_pages, may be vmalloc'd
*/
- void ***ppp_pools;
+ void ***ppp_ptr_pages;
/*
* memory shrinker
*/
p_idx = pool->ppp_free_pages / PTRS_PER_PAGE;
g_idx = pool->ppp_free_pages % PTRS_PER_PAGE;
- LASSERT(pool->ppp_pools[p_idx]);
+ LASSERT(pool->ppp_ptr_pages[p_idx]);
while (npages--) {
- LASSERT(pool->ppp_pools[p_idx]);
- LASSERT(pool->ppp_pools[p_idx][g_idx] != NULL);
+ LASSERT(pool->ppp_ptr_pages[p_idx]);
+ LASSERT(pool->ppp_ptr_pages[p_idx][g_idx] != NULL);
if (pool->ppp_order == 0)
- __free_page(pool->ppp_pools[p_idx][g_idx]);
+ __free_page(pool->ppp_ptr_pages[p_idx][g_idx]);
else
- OBD_FREE_LARGE(pool->ppp_pools[p_idx][g_idx],
+ OBD_FREE_LARGE(pool->ppp_ptr_pages[p_idx][g_idx],
element_size(pool));
- pool->ppp_pools[p_idx][g_idx] = NULL;
+ pool->ppp_ptr_pages[p_idx][g_idx] = NULL;
if (++g_idx == PTRS_PER_PAGE) {
p_idx++;
/* free unused pools */
while (p_idx_max1 < p_idx_max2) {
- LASSERT(pool->ppp_pools[p_idx_max2]);
- OBD_FREE(pool->ppp_pools[p_idx_max2], PAGE_SIZE);
- pool->ppp_pools[p_idx_max2] = NULL;
+ LASSERT(pool->ppp_ptr_pages[p_idx_max2]);
+ OBD_FREE(pool->ppp_ptr_pages[p_idx_max2], PAGE_SIZE);
+ pool->ppp_ptr_pages[p_idx_max2] = NULL;
p_idx_max2--;
}
}
ng_idx = (npages - 1) % PTRS_PER_PAGE;
while (freeslot) {
- LASSERT(page_pool->ppp_pools[op_idx][og_idx] == NULL);
+ LASSERT(page_pool->ppp_ptr_pages[op_idx][og_idx] == NULL);
LASSERT(pools[np_idx][ng_idx] != NULL);
- page_pool->ppp_pools[op_idx][og_idx] = pools[np_idx][ng_idx];
+ page_pool->ppp_ptr_pages[op_idx][og_idx] = pools[np_idx][ng_idx];
pools[np_idx][ng_idx] = NULL;
freeslot--;
np_idx = 0;
while (cur_npools < end_npools) {
- LASSERT(page_pool->ppp_pools[cur_npools] == NULL);
+ LASSERT(page_pool->ppp_ptr_pages[cur_npools] == NULL);
LASSERT(np_idx < npools);
LASSERT(pools[np_idx] != NULL);
- page_pool->ppp_pools[cur_npools++] = pools[np_idx];
+ page_pool->ppp_ptr_pages[cur_npools++] = pools[np_idx];
pools[np_idx++] = NULL;
}
for (i = 0; i < count; i++) {
void **pagep = page_from(array, i);
- if (page_pool->ppp_pools[p_idx][g_idx] == NULL)
+ if (page_pool->ppp_ptr_pages[p_idx][g_idx] == NULL)
GOTO(out_unlock, rc = -EPROTO);
- *pagep = page_pool->ppp_pools[p_idx][g_idx];
- page_pool->ppp_pools[p_idx][g_idx] = NULL;
+ *pagep = page_pool->ppp_ptr_pages[p_idx][g_idx];
+ page_pool->ppp_ptr_pages[p_idx][g_idx] = NULL;
if (++g_idx == PTRS_PER_PAGE) {
p_idx++;
if (page_pool->ppp_free_pages + count > page_pool->ppp_total_pages)
GOTO(out_unlock, rc = -EPROTO);
- if (!page_pool->ppp_pools[p_idx])
+ if (!page_pool->ppp_ptr_pages[p_idx])
GOTO(out_unlock, rc = -EPROTO);
for (i = 0; i < count; i++) {
void **pagep = page_from(array, i);
if (!*pagep ||
- page_pool->ppp_pools[p_idx][g_idx] != NULL)
+ page_pool->ppp_ptr_pages[p_idx][g_idx] != NULL)
GOTO(out_unlock, rc = -EPROTO);
- page_pool->ppp_pools[p_idx][g_idx] = *pagep;
+ page_pool->ppp_ptr_pages[p_idx][g_idx] = *pagep;
if (++g_idx == PTRS_PER_PAGE) {
p_idx++;
g_idx = 0;
}
EXPORT_SYMBOL(sptlrpc_pool_del_user);
-static inline void pool_alloc(struct ptlrpc_page_pool *pool)
+static inline void pool_ptrs_alloc(struct ptlrpc_page_pool *pool)
{
LASSERT(pool->ppp_max_pools);
- OBD_ALLOC_LARGE(pool->ppp_pools,
+ OBD_ALLOC_LARGE(pool->ppp_ptr_pages,
pool->ppp_max_pools *
- sizeof(*pool->ppp_pools));
+ sizeof(*pool->ppp_ptr_pages));
}
-static inline void pool_free(struct ptlrpc_page_pool *pool)
+static inline void pool_ptrs_free(struct ptlrpc_page_pool *pool)
{
LASSERT(pool->ppp_max_pools);
- LASSERT(pool->ppp_pools);
+ LASSERT(pool->ppp_ptr_pages);
- OBD_FREE_LARGE(pool->ppp_pools,
- pool->ppp_max_pools * sizeof(*pool->ppp_pools));
+ OBD_FREE_LARGE(pool->ppp_ptr_pages,
+ pool->ppp_max_pools * sizeof(*pool->ppp_ptr_pages));
}
int sptlrpc_pool_init(void)
spin_lock_init(&pool->ppp_lock);
pool->ppp_st_max_wait = ktime_set(0, 0);
- pool_alloc(pool);
+ pool_ptrs_alloc(pool);
pool->ppp_order = pool_order;
CDEBUG(D_SEC, "Allocated pool %i\n", pool_order);
- if (pool->ppp_pools == NULL)
+ if (pool->ppp_ptr_pages == NULL)
GOTO(fail, rc = -ENOMEM);
#ifdef HAVE_SHRINKER_COUNT
pool->pool_shrinker.count_objects = pool_shrink_count;
pool = page_pools[pool_order];
if (pool) {
unregister_shrinker(&pool->pool_shrinker);
- if (pool->ppp_pools)
- pool_free(pool);
+ if (pool->ppp_ptr_pages)
+ pool_ptrs_free(pool);
OBD_FREE(pool, sizeof(**page_pools));
}
}
for (pool_order = 0; pool_order < POOLS_COUNT; pool_order++) {
pool = page_pools[pool_order];
unregister_shrinker(&pool->pool_shrinker);
- LASSERT(pool->ppp_pools);
+ LASSERT(pool->ppp_ptr_pages);
LASSERT(pool->ppp_total_pages == pool->ppp_free_pages);
npools = npages_to_npools(pool->ppp_total_pages);
- cleaned = pool_cleanup(pool->ppp_pools, npools, pool);
+ cleaned = pool_cleanup(pool->ppp_ptr_pages, npools, pool);
LASSERT(cleaned == pool->ppp_total_pages);
- pool_free(pool);
+ pool_ptrs_free(pool);
if (pool->ppp_st_access > 0) {
CDEBUG(D_SEC,