diff options
Diffstat (limited to 'mm/cma.c')
-rw-r--r-- | mm/cma.c | 5 |
1 files changed, 5 insertions, 0 deletions
@@ -23,6 +23,7 @@ | |||
23 | # define DEBUG | 23 | # define DEBUG |
24 | #endif | 24 | #endif |
25 | #endif | 25 | #endif |
26 | #define CREATE_TRACE_POINTS | ||
26 | 27 | ||
27 | #include <linux/memblock.h> | 28 | #include <linux/memblock.h> |
28 | #include <linux/err.h> | 29 | #include <linux/err.h> |
@@ -34,6 +35,7 @@ | |||
34 | #include <linux/cma.h> | 35 | #include <linux/cma.h> |
35 | #include <linux/highmem.h> | 36 | #include <linux/highmem.h> |
36 | #include <linux/io.h> | 37 | #include <linux/io.h> |
38 | #include <trace/events/cma.h> | ||
37 | 39 | ||
38 | #include "cma.h" | 40 | #include "cma.h" |
39 | 41 | ||
@@ -414,6 +416,8 @@ struct page *cma_alloc(struct cma *cma, unsigned int count, unsigned int align) | |||
414 | start = bitmap_no + mask + 1; | 416 | start = bitmap_no + mask + 1; |
415 | } | 417 | } |
416 | 418 | ||
419 | trace_cma_alloc(page ? pfn : -1UL, page, count, align); | ||
420 | |||
417 | pr_debug("%s(): returned %p\n", __func__, page); | 421 | pr_debug("%s(): returned %p\n", __func__, page); |
418 | return page; | 422 | return page; |
419 | } | 423 | } |
@@ -446,6 +450,7 @@ bool cma_release(struct cma *cma, const struct page *pages, unsigned int count) | |||
446 | 450 | ||
447 | free_contig_range(pfn, count); | 451 | free_contig_range(pfn, count); |
448 | cma_clear_bitmap(cma, pfn, count); | 452 | cma_clear_bitmap(cma, pfn, count); |
453 | trace_cma_release(pfn, pages, count); | ||
449 | 454 | ||
450 | return true; | 455 | return true; |
451 | } | 456 | } |