Lines Matching refs:pcp
1436 struct per_cpu_pages *pcp) in free_pcppages_bulk() argument
1449 count = min(pcp->count, count); in free_pcppages_bulk()
1464 list = &pcp->lists[migratetype]; in free_pcppages_bulk()
1475 pcp->count--; in free_pcppages_bulk()
1491 if (prefetch_nr++ < pcp->batch) in free_pcppages_bulk()
3050 unsigned int order, struct per_cpu_pages *pcp, in get_populated_pcp_list() argument
3053 struct list_head *list = &pcp->lists[migratetype]; in get_populated_pcp_list()
3056 pcp->count += rmqueue_bulk(zone, order, in get_populated_pcp_list()
3057 pcp->batch, list, in get_populated_pcp_list()
3075 void drain_zone_pages(struct zone *zone, struct per_cpu_pages *pcp) in drain_zone_pages() argument
3081 batch = READ_ONCE(pcp->batch); in drain_zone_pages()
3082 to_drain = min(pcp->count, batch); in drain_zone_pages()
3084 free_pcppages_bulk(zone, to_drain, pcp); in drain_zone_pages()
3100 struct per_cpu_pages *pcp; in drain_pages_zone() local
3105 pcp = &pset->pcp; in drain_pages_zone()
3106 if (pcp->count) in drain_pages_zone()
3107 free_pcppages_bulk(zone, pcp->count, pcp); in drain_pages_zone()
3203 struct per_cpu_pageset *pcp; in drain_all_pages() local
3208 pcp = per_cpu_ptr(zone->pageset, cpu); in drain_all_pages()
3209 if (pcp->pcp.count) in drain_all_pages()
3213 pcp = per_cpu_ptr(z->pageset, cpu); in drain_all_pages()
3214 if (pcp->pcp.count) { in drain_all_pages()
3310 struct per_cpu_pages *pcp; in free_unref_page_commit() local
3336 pcp = &this_cpu_ptr(zone->pageset)->pcp; in free_unref_page_commit()
3337 list_add(&page->lru, &pcp->lists[migratetype]); in free_unref_page_commit()
3338 pcp->count++; in free_unref_page_commit()
3339 if (pcp->count >= pcp->high) { in free_unref_page_commit()
3340 unsigned long batch = READ_ONCE(pcp->batch); in free_unref_page_commit()
3341 free_pcppages_bulk(zone, batch, pcp); in free_unref_page_commit()
3520 struct per_cpu_pages *pcp, in __rmqueue_pcplist() argument
3530 list = get_populated_pcp_list(zone, 0, pcp, in __rmqueue_pcplist()
3539 list = get_populated_pcp_list(zone, 0, pcp, in __rmqueue_pcplist()
3548 pcp->count--; in __rmqueue_pcplist()
3559 struct per_cpu_pages *pcp; in rmqueue_pcplist() local
3564 pcp = &this_cpu_ptr(zone->pageset)->pcp; in rmqueue_pcplist()
3565 page = __rmqueue_pcplist(zone, migratetype, alloc_flags, pcp, in rmqueue_pcplist()
5690 free_pcp += per_cpu_ptr(zone->pageset, cpu)->pcp.count; in show_free_areas()
5782 free_pcp += per_cpu_ptr(zone->pageset, cpu)->pcp.count; in show_free_areas()
5825 K(this_cpu_read(zone->pageset->pcp.count)), in show_free_areas()
6612 static void pageset_update(struct per_cpu_pages *pcp, unsigned long high, in pageset_update() argument
6616 pcp->batch = 1; in pageset_update()
6620 pcp->high = high; in pageset_update()
6623 pcp->batch = batch; in pageset_update()
6629 pageset_update(&p->pcp, 6 * batch, max(1UL, 1 * batch)); in pageset_set_batch()
6634 struct per_cpu_pages *pcp; in pageset_init() local
6639 pcp = &p->pcp; in pageset_init()
6641 INIT_LIST_HEAD(&pcp->lists[migratetype]); in pageset_init()
6661 pageset_update(&p->pcp, high, batch); in pageset_set_high()
6665 struct per_cpu_pageset *pcp) in pageset_set_high_and_batch() argument
6668 pageset_set_high(pcp, in pageset_set_high_and_batch()
6672 pageset_set_batch(pcp, zone_batchsize(zone)); in pageset_set_high_and_batch()
6677 struct per_cpu_pageset *pcp = per_cpu_ptr(zone->pageset, cpu); in zone_pageset_init() local
6679 pageset_init(pcp); in zone_pageset_init()
6680 pageset_set_high_and_batch(zone, pcp); in zone_pageset_init()
6712 struct per_cpu_pageset *pcp = &per_cpu(boot_pageset, cpu); in setup_per_cpu_pageset() local
6713 memset(pcp->vm_numa_stat_diff, 0, in setup_per_cpu_pageset()
6714 sizeof(pcp->vm_numa_stat_diff)); in setup_per_cpu_pageset()