Lines Matching refs:pcp
1343 struct per_cpu_pages *pcp) in free_pcppages_bulk() argument
1356 count = min(pcp->count, count); in free_pcppages_bulk()
1371 list = &pcp->lists[migratetype]; in free_pcppages_bulk()
1382 pcp->count--; in free_pcppages_bulk()
1398 if (prefetch_nr++ < pcp->batch) in free_pcppages_bulk()
2933 void drain_zone_pages(struct zone *zone, struct per_cpu_pages *pcp) in drain_zone_pages() argument
2939 batch = READ_ONCE(pcp->batch); in drain_zone_pages()
2940 to_drain = min(pcp->count, batch); in drain_zone_pages()
2942 free_pcppages_bulk(zone, to_drain, pcp); in drain_zone_pages()
2958 struct per_cpu_pages *pcp; in drain_pages_zone() local
2963 pcp = &pset->pcp; in drain_pages_zone()
2964 if (pcp->count) in drain_pages_zone()
2965 free_pcppages_bulk(zone, pcp->count, pcp); in drain_pages_zone()
3061 struct per_cpu_pageset *pcp; in drain_all_pages() local
3066 pcp = per_cpu_ptr(zone->pageset, cpu); in drain_all_pages()
3067 if (pcp->pcp.count) in drain_all_pages()
3071 pcp = per_cpu_ptr(z->pageset, cpu); in drain_all_pages()
3072 if (pcp->pcp.count) { in drain_all_pages()
3168 struct per_cpu_pages *pcp; in free_unref_page_commit() local
3190 pcp = &this_cpu_ptr(zone->pageset)->pcp; in free_unref_page_commit()
3191 list_add(&page->lru, &pcp->lists[migratetype]); in free_unref_page_commit()
3192 pcp->count++; in free_unref_page_commit()
3193 if (pcp->count >= pcp->high) { in free_unref_page_commit()
3194 unsigned long batch = READ_ONCE(pcp->batch); in free_unref_page_commit()
3195 free_pcppages_bulk(zone, batch, pcp); in free_unref_page_commit()
3373 struct per_cpu_pages *pcp, in __rmqueue_pcplist() argument
3380 pcp->count += rmqueue_bulk(zone, 0, in __rmqueue_pcplist()
3381 pcp->batch, list, in __rmqueue_pcplist()
3389 pcp->count--; in __rmqueue_pcplist()
3400 struct per_cpu_pages *pcp; in rmqueue_pcplist() local
3406 pcp = &this_cpu_ptr(zone->pageset)->pcp; in rmqueue_pcplist()
3407 list = &pcp->lists[migratetype]; in rmqueue_pcplist()
3408 page = __rmqueue_pcplist(zone, migratetype, alloc_flags, pcp, list); in rmqueue_pcplist()
5446 free_pcp += per_cpu_ptr(zone->pageset, cpu)->pcp.count; in show_free_areas()
5537 free_pcp += per_cpu_ptr(zone->pageset, cpu)->pcp.count; in show_free_areas()
5580 K(this_cpu_read(zone->pageset->pcp.count)), in show_free_areas()
6270 static void pageset_update(struct per_cpu_pages *pcp, unsigned long high, in pageset_update() argument
6274 pcp->batch = 1; in pageset_update()
6278 pcp->high = high; in pageset_update()
6281 pcp->batch = batch; in pageset_update()
6287 pageset_update(&p->pcp, 6 * batch, max(1UL, 1 * batch)); in pageset_set_batch()
6292 struct per_cpu_pages *pcp; in pageset_init() local
6297 pcp = &p->pcp; in pageset_init()
6299 INIT_LIST_HEAD(&pcp->lists[migratetype]); in pageset_init()
6319 pageset_update(&p->pcp, high, batch); in pageset_set_high()
6323 struct per_cpu_pageset *pcp) in pageset_set_high_and_batch() argument
6326 pageset_set_high(pcp, in pageset_set_high_and_batch()
6330 pageset_set_batch(pcp, zone_batchsize(zone)); in pageset_set_high_and_batch()
6335 struct per_cpu_pageset *pcp = per_cpu_ptr(zone->pageset, cpu); in zone_pageset_init() local
6337 pageset_init(pcp); in zone_pageset_init()
6338 pageset_set_high_and_batch(zone, pcp); in zone_pageset_init()
6370 struct per_cpu_pageset *pcp = &per_cpu(boot_pageset, cpu); in setup_per_cpu_pageset() local
6371 memset(pcp->vm_numa_stat_diff, 0, in setup_per_cpu_pageset()
6372 sizeof(pcp->vm_numa_stat_diff)); in setup_per_cpu_pageset()