summaryrefslogtreecommitdiffstats
path: root/mm/page_alloc.c
diff options
context:
space:
mode:
Diffstat (limited to 'mm/page_alloc.c')
-rw-r--r--mm/page_alloc.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 913a8ebd3a8e..80f954d82d77 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -1076,6 +1076,7 @@ static void free_hot_cold_page(struct page *page, int cold)
1076 1076
1077void free_hot_page(struct page *page) 1077void free_hot_page(struct page *page)
1078{ 1078{
1079 trace_mm_page_free_direct(page, 0);
1079 free_hot_cold_page(page, 0); 1080 free_hot_cold_page(page, 0);
1080} 1081}
1081 1082
@@ -1920,6 +1921,7 @@ __alloc_pages_nodemask(gfp_t gfp_mask, unsigned int order,
1920 zonelist, high_zoneidx, nodemask, 1921 zonelist, high_zoneidx, nodemask,
1921 preferred_zone, migratetype); 1922 preferred_zone, migratetype);
1922 1923
1924 trace_mm_page_alloc(page, order, gfp_mask, migratetype);
1923 return page; 1925 return page;
1924} 1926}
1925EXPORT_SYMBOL(__alloc_pages_nodemask); 1927EXPORT_SYMBOL(__alloc_pages_nodemask);
@@ -1954,13 +1956,16 @@ void __pagevec_free(struct pagevec *pvec)
1954{ 1956{
1955 int i = pagevec_count(pvec); 1957 int i = pagevec_count(pvec);
1956 1958
1957 while (--i >= 0) 1959 while (--i >= 0) {
1960 trace_mm_pagevec_free(pvec->pages[i], pvec->cold);
1958 free_hot_cold_page(pvec->pages[i], pvec->cold); 1961 free_hot_cold_page(pvec->pages[i], pvec->cold);
1962 }
1959} 1963}
1960 1964
1961void __free_pages(struct page *page, unsigned int order) 1965void __free_pages(struct page *page, unsigned int order)
1962{ 1966{
1963 if (put_page_testzero(page)) { 1967 if (put_page_testzero(page)) {
1968 trace_mm_page_free_direct(page, order);
1964 if (order == 0) 1969 if (order == 0)
1965 free_hot_page(page); 1970 free_hot_page(page);
1966 else 1971 else