Loading arch/arm64/configs/msm-perf_defconfig +1 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ CONFIG_SMP=y CONFIG_SCHED_MC=y CONFIG_PREEMPT=y CONFIG_CMA=y CONFIG_CMA_DEBUGFS=y CONFIG_ZSMALLOC=y CONFIG_BALANCE_ANON_FILE_RECLAIM=y CONFIG_FORCE_ALLOC_FROM_DMA_ZONE=y Loading arch/arm64/configs/msm_defconfig +1 −0 Original line number Diff line number Diff line Loading @@ -44,6 +44,7 @@ CONFIG_SMP=y CONFIG_SCHED_MC=y CONFIG_PREEMPT=y CONFIG_CMA=y CONFIG_CMA_DEBUGFS=y CONFIG_ZSMALLOC=y CONFIG_BALANCE_ANON_FILE_RECLAIM=y CONFIG_FORCE_ALLOC_FROM_DMA_ZONE=y Loading include/trace/events/cma.h 0 → 100644 +104 −0 Original line number Diff line number Diff line #undef TRACE_SYSTEM #define TRACE_SYSTEM cma #if !defined(_TRACE_CMA_H) || defined(TRACE_HEADER_MULTI_READ) #define _TRACE_CMA_H #include <linux/types.h> #include <linux/tracepoint.h> DECLARE_EVENT_CLASS(cma_alloc_class, TP_PROTO(unsigned long pfn, const struct page *page, unsigned int count, unsigned int align), TP_ARGS(pfn, page, count, align), TP_STRUCT__entry( __field(unsigned long, pfn) __field(const struct page *, page) __field(unsigned int, count) __field(unsigned int, align) ), TP_fast_assign( __entry->pfn = pfn; __entry->page = page; __entry->count = count; __entry->align = align; ), TP_printk("pfn=%lx page=%p count=%u align=%u", __entry->pfn, __entry->page, __entry->count, __entry->align) ); TRACE_EVENT(cma_release, TP_PROTO(unsigned long pfn, const struct page *page, unsigned int count), TP_ARGS(pfn, page, count), TP_STRUCT__entry( __field(unsigned long, pfn) __field(const struct page *, page) __field(unsigned int, count) ), TP_fast_assign( __entry->pfn = pfn; __entry->page = page; __entry->count = count; ), TP_printk("pfn=%lx page=%p count=%u", __entry->pfn, __entry->page, __entry->count) ); TRACE_EVENT(cma_alloc_start, TP_PROTO(unsigned int count, unsigned int align), TP_ARGS(count, align), TP_STRUCT__entry( __field(unsigned int, count) __field(unsigned int, align) ), TP_fast_assign( __entry->count = count; __entry->align = align; ), TP_printk("count=%u align=%u", __entry->count, __entry->align) ); DEFINE_EVENT(cma_alloc_class, cma_alloc, TP_PROTO(unsigned long pfn, const struct page *page, unsigned int count, unsigned int align), TP_ARGS(pfn, page, count, align) ); DEFINE_EVENT(cma_alloc_class, cma_alloc_busy_retry, TP_PROTO(unsigned long pfn, const struct page *page, unsigned int count, unsigned int align), TP_ARGS(pfn, page, count, align) ); #endif /* _TRACE_CMA_H */ /* This part must be outside protection */ #include <trace/define_trace.h> include/trace/events/migrate.h +21 −0 Original line number Diff line number Diff line Loading @@ -74,6 +74,27 @@ TRACE_EVENT(mm_numa_migrate_ratelimit, __entry->dst_nid, __entry->nr_pages) ); TRACE_EVENT(mm_migrate_pages_start, TP_PROTO(enum migrate_mode mode, int reason), TP_ARGS(mode, reason), TP_STRUCT__entry( __field(enum migrate_mode, mode) __field(int, reason) ), TP_fast_assign( __entry->mode = mode; __entry->reason = reason; ), TP_printk("mode=%s reason=%s", __print_symbolic(__entry->mode, MIGRATE_MODE), __print_symbolic(__entry->reason, MIGRATE_REASON)) ); #endif /* _TRACE_MIGRATE_H */ /* This part must be outside protection */ Loading mm/Kconfig +6 −0 Original line number Diff line number Diff line Loading @@ -516,6 +516,12 @@ config CMA_DEBUG processing calls such as dma_alloc_from_contiguous(). This option does not affect warning and error messages. config CMA_DEBUGFS bool "CMA debugfs interface" depends on CMA && DEBUG_FS help Turns on the DebugFS interface for CMA. config CMA_AREAS int "Maximum count of the CMA areas" depends on CMA Loading Loading
arch/arm64/configs/msm-perf_defconfig +1 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ CONFIG_SMP=y CONFIG_SCHED_MC=y CONFIG_PREEMPT=y CONFIG_CMA=y CONFIG_CMA_DEBUGFS=y CONFIG_ZSMALLOC=y CONFIG_BALANCE_ANON_FILE_RECLAIM=y CONFIG_FORCE_ALLOC_FROM_DMA_ZONE=y Loading
arch/arm64/configs/msm_defconfig +1 −0 Original line number Diff line number Diff line Loading @@ -44,6 +44,7 @@ CONFIG_SMP=y CONFIG_SCHED_MC=y CONFIG_PREEMPT=y CONFIG_CMA=y CONFIG_CMA_DEBUGFS=y CONFIG_ZSMALLOC=y CONFIG_BALANCE_ANON_FILE_RECLAIM=y CONFIG_FORCE_ALLOC_FROM_DMA_ZONE=y Loading
include/trace/events/cma.h 0 → 100644 +104 −0 Original line number Diff line number Diff line #undef TRACE_SYSTEM #define TRACE_SYSTEM cma #if !defined(_TRACE_CMA_H) || defined(TRACE_HEADER_MULTI_READ) #define _TRACE_CMA_H #include <linux/types.h> #include <linux/tracepoint.h> DECLARE_EVENT_CLASS(cma_alloc_class, TP_PROTO(unsigned long pfn, const struct page *page, unsigned int count, unsigned int align), TP_ARGS(pfn, page, count, align), TP_STRUCT__entry( __field(unsigned long, pfn) __field(const struct page *, page) __field(unsigned int, count) __field(unsigned int, align) ), TP_fast_assign( __entry->pfn = pfn; __entry->page = page; __entry->count = count; __entry->align = align; ), TP_printk("pfn=%lx page=%p count=%u align=%u", __entry->pfn, __entry->page, __entry->count, __entry->align) ); TRACE_EVENT(cma_release, TP_PROTO(unsigned long pfn, const struct page *page, unsigned int count), TP_ARGS(pfn, page, count), TP_STRUCT__entry( __field(unsigned long, pfn) __field(const struct page *, page) __field(unsigned int, count) ), TP_fast_assign( __entry->pfn = pfn; __entry->page = page; __entry->count = count; ), TP_printk("pfn=%lx page=%p count=%u", __entry->pfn, __entry->page, __entry->count) ); TRACE_EVENT(cma_alloc_start, TP_PROTO(unsigned int count, unsigned int align), TP_ARGS(count, align), TP_STRUCT__entry( __field(unsigned int, count) __field(unsigned int, align) ), TP_fast_assign( __entry->count = count; __entry->align = align; ), TP_printk("count=%u align=%u", __entry->count, __entry->align) ); DEFINE_EVENT(cma_alloc_class, cma_alloc, TP_PROTO(unsigned long pfn, const struct page *page, unsigned int count, unsigned int align), TP_ARGS(pfn, page, count, align) ); DEFINE_EVENT(cma_alloc_class, cma_alloc_busy_retry, TP_PROTO(unsigned long pfn, const struct page *page, unsigned int count, unsigned int align), TP_ARGS(pfn, page, count, align) ); #endif /* _TRACE_CMA_H */ /* This part must be outside protection */ #include <trace/define_trace.h>
include/trace/events/migrate.h +21 −0 Original line number Diff line number Diff line Loading @@ -74,6 +74,27 @@ TRACE_EVENT(mm_numa_migrate_ratelimit, __entry->dst_nid, __entry->nr_pages) ); TRACE_EVENT(mm_migrate_pages_start, TP_PROTO(enum migrate_mode mode, int reason), TP_ARGS(mode, reason), TP_STRUCT__entry( __field(enum migrate_mode, mode) __field(int, reason) ), TP_fast_assign( __entry->mode = mode; __entry->reason = reason; ), TP_printk("mode=%s reason=%s", __print_symbolic(__entry->mode, MIGRATE_MODE), __print_symbolic(__entry->reason, MIGRATE_REASON)) ); #endif /* _TRACE_MIGRATE_H */ /* This part must be outside protection */ Loading
mm/Kconfig +6 −0 Original line number Diff line number Diff line Loading @@ -516,6 +516,12 @@ config CMA_DEBUG processing calls such as dma_alloc_from_contiguous(). This option does not affect warning and error messages. config CMA_DEBUGFS bool "CMA debugfs interface" depends on CMA && DEBUG_FS help Turns on the DebugFS interface for CMA. config CMA_AREAS int "Maximum count of the CMA areas" depends on CMA Loading