diff options
Diffstat (limited to 'mm')
-rw-r--r-- | mm/hugetlb.c | 7 | ||||
-rw-r--r-- | mm/vmstat.c | 4 |
2 files changed, 11 insertions, 0 deletions
diff --git a/mm/hugetlb.c b/mm/hugetlb.c index 93ea46a0fba4..8deae4eb9696 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c | |||
@@ -242,6 +242,11 @@ static int alloc_fresh_huge_page(void) | |||
242 | hugetlb_next_nid = next_nid; | 242 | hugetlb_next_nid = next_nid; |
243 | } while (!page && hugetlb_next_nid != start_nid); | 243 | } while (!page && hugetlb_next_nid != start_nid); |
244 | 244 | ||
245 | if (ret) | ||
246 | count_vm_event(HTLB_BUDDY_PGALLOC); | ||
247 | else | ||
248 | count_vm_event(HTLB_BUDDY_PGALLOC_FAIL); | ||
249 | |||
245 | return ret; | 250 | return ret; |
246 | } | 251 | } |
247 | 252 | ||
@@ -302,9 +307,11 @@ static struct page *alloc_buddy_huge_page(struct vm_area_struct *vma, | |||
302 | */ | 307 | */ |
303 | nr_huge_pages_node[nid]++; | 308 | nr_huge_pages_node[nid]++; |
304 | surplus_huge_pages_node[nid]++; | 309 | surplus_huge_pages_node[nid]++; |
310 | __count_vm_event(HTLB_BUDDY_PGALLOC); | ||
305 | } else { | 311 | } else { |
306 | nr_huge_pages--; | 312 | nr_huge_pages--; |
307 | surplus_huge_pages--; | 313 | surplus_huge_pages--; |
314 | __count_vm_event(HTLB_BUDDY_PGALLOC_FAIL); | ||
308 | } | 315 | } |
309 | spin_unlock(&hugetlb_lock); | 316 | spin_unlock(&hugetlb_lock); |
310 | 317 | ||
diff --git a/mm/vmstat.c b/mm/vmstat.c index 879bcc0a1d4c..4c21670f8d91 100644 --- a/mm/vmstat.c +++ b/mm/vmstat.c | |||
@@ -645,6 +645,10 @@ static const char * const vmstat_text[] = { | |||
645 | "allocstall", | 645 | "allocstall", |
646 | 646 | ||
647 | "pgrotated", | 647 | "pgrotated", |
648 | #ifdef CONFIG_HUGETLB_PAGE | ||
649 | "htlb_buddy_alloc_success", | ||
650 | "htlb_buddy_alloc_fail", | ||
651 | #endif | ||
648 | #endif | 652 | #endif |
649 | }; | 653 | }; |
650 | 654 | ||