Lines Matching refs:pstat
442 __page_stat__findnew_page(struct page_stat *pstat, bool create) in __page_stat__findnew_page() argument
454 cmp = data->page - pstat->page; in __page_stat__findnew_page()
468 data->page = pstat->page; in __page_stat__findnew_page()
469 data->order = pstat->order; in __page_stat__findnew_page()
470 data->gfp_flags = pstat->gfp_flags; in __page_stat__findnew_page()
471 data->migrate_type = pstat->migrate_type; in __page_stat__findnew_page()
480 static struct page_stat *page_stat__find_page(struct page_stat *pstat) in page_stat__find_page() argument
482 return __page_stat__findnew_page(pstat, false); in page_stat__find_page()
485 static struct page_stat *page_stat__findnew_page(struct page_stat *pstat) in page_stat__findnew_page() argument
487 return __page_stat__findnew_page(pstat, true); in page_stat__findnew_page()
491 __page_stat__findnew_alloc(struct page_stat *pstat, bool create) in __page_stat__findnew_alloc() argument
505 cmp = sort->cmp(pstat, data); in __page_stat__findnew_alloc()
523 data->page = pstat->page; in __page_stat__findnew_alloc()
524 data->order = pstat->order; in __page_stat__findnew_alloc()
525 data->gfp_flags = pstat->gfp_flags; in __page_stat__findnew_alloc()
526 data->migrate_type = pstat->migrate_type; in __page_stat__findnew_alloc()
535 static struct page_stat *page_stat__find_alloc(struct page_stat *pstat) in page_stat__find_alloc() argument
537 return __page_stat__findnew_alloc(pstat, false); in page_stat__find_alloc()
540 static struct page_stat *page_stat__findnew_alloc(struct page_stat *pstat) in page_stat__findnew_alloc() argument
542 return __page_stat__findnew_alloc(pstat, true); in page_stat__findnew_alloc()
546 __page_stat__findnew_caller(struct page_stat *pstat, bool create) in __page_stat__findnew_caller() argument
560 cmp = sort->cmp(pstat, data); in __page_stat__findnew_caller()
578 data->callsite = pstat->callsite; in __page_stat__findnew_caller()
579 data->order = pstat->order; in __page_stat__findnew_caller()
580 data->gfp_flags = pstat->gfp_flags; in __page_stat__findnew_caller()
581 data->migrate_type = pstat->migrate_type; in __page_stat__findnew_caller()
590 static struct page_stat *page_stat__find_caller(struct page_stat *pstat) in page_stat__find_caller() argument
592 return __page_stat__findnew_caller(pstat, false); in page_stat__find_caller()
595 static struct page_stat *page_stat__findnew_caller(struct page_stat *pstat) in page_stat__findnew_caller() argument
597 return __page_stat__findnew_caller(pstat, true); in page_stat__findnew_caller()
797 struct page_stat *pstat; in perf_evsel__process_page_alloc_event() local
829 pstat = page_stat__findnew_page(&this); in perf_evsel__process_page_alloc_event()
830 if (pstat == NULL) in perf_evsel__process_page_alloc_event()
833 pstat->nr_alloc++; in perf_evsel__process_page_alloc_event()
834 pstat->alloc_bytes += bytes; in perf_evsel__process_page_alloc_event()
835 pstat->callsite = callsite; in perf_evsel__process_page_alloc_event()
838 pstat = page_stat__findnew_alloc(&this); in perf_evsel__process_page_alloc_event()
839 if (pstat == NULL) in perf_evsel__process_page_alloc_event()
842 pstat->nr_alloc++; in perf_evsel__process_page_alloc_event()
843 pstat->alloc_bytes += bytes; in perf_evsel__process_page_alloc_event()
844 pstat->callsite = callsite; in perf_evsel__process_page_alloc_event()
848 pstat = page_stat__findnew_caller(&this); in perf_evsel__process_page_alloc_event()
849 if (pstat == NULL) in perf_evsel__process_page_alloc_event()
852 pstat->nr_alloc++; in perf_evsel__process_page_alloc_event()
853 pstat->alloc_bytes += bytes; in perf_evsel__process_page_alloc_event()
866 struct page_stat *pstat; in perf_evsel__process_page_free_event() local
880 pstat = page_stat__find_page(&this); in perf_evsel__process_page_free_event()
881 if (pstat == NULL) { in perf_evsel__process_page_free_event()
891 this.gfp_flags = pstat->gfp_flags; in perf_evsel__process_page_free_event()
892 this.migrate_type = pstat->migrate_type; in perf_evsel__process_page_free_event()
893 this.callsite = pstat->callsite; in perf_evsel__process_page_free_event()
895 rb_erase(&pstat->node, &page_live_tree); in perf_evsel__process_page_free_event()
896 free(pstat); in perf_evsel__process_page_free_event()
901 pstat = page_stat__find_alloc(&this); in perf_evsel__process_page_free_event()
902 if (pstat == NULL) in perf_evsel__process_page_free_event()
905 pstat->nr_free++; in perf_evsel__process_page_free_event()
906 pstat->free_bytes += bytes; in perf_evsel__process_page_free_event()
909 pstat = page_stat__find_caller(&this); in perf_evsel__process_page_free_event()
910 if (pstat == NULL) in perf_evsel__process_page_free_event()
913 pstat->nr_free++; in perf_evsel__process_page_free_event()
914 pstat->free_bytes += bytes; in perf_evsel__process_page_free_event()
917 pstat->nr_alloc--; in perf_evsel__process_page_free_event()
918 pstat->alloc_bytes -= bytes; in perf_evsel__process_page_free_event()
920 if (pstat->nr_alloc == 0) { in perf_evsel__process_page_free_event()
921 rb_erase(&pstat->node, &page_caller_tree); in perf_evsel__process_page_free_event()
922 free(pstat); in perf_evsel__process_page_free_event()