X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=instrumentation%2Fevents%2Flttng-module%2Fcompaction.h;h=7914e234c471631fe927ef9ec9c301aa22e2c2e3;hb=b2e8674f96ff516d52f49e27e5e9d8bfccac27da;hp=22024e9ee582856262ffcd52301182cc13744437;hpb=0007344741ef65259bc52dea72259173dfbf96c0;p=lttng-modules.git diff --git a/instrumentation/events/lttng-module/compaction.h b/instrumentation/events/lttng-module/compaction.h index 22024e9e..7914e234 100644 --- a/instrumentation/events/lttng-module/compaction.h +++ b/instrumentation/events/lttng-module/compaction.h @@ -1,15 +1,69 @@ #undef TRACE_SYSTEM #define TRACE_SYSTEM compaction -#if !defined(_TRACE_COMPACTION_H) || defined(TRACE_HEADER_MULTI_READ) -#define _TRACE_COMPACTION_H +#if !defined(LTTNG_TRACE_COMPACTION_H) || defined(TRACE_HEADER_MULTI_READ) +#define LTTNG_TRACE_COMPACTION_H +#include "../../../probes/lttng-tracepoint-event.h" #include -#include #include #include -DECLARE_EVENT_CLASS(mm_compaction_isolate_template, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,0,0) + +LTTNG_TRACEPOINT_EVENT_CLASS(mm_compaction_isolate_template, + + TP_PROTO(unsigned long start_pfn, + unsigned long end_pfn, + unsigned long nr_scanned, + unsigned long nr_taken), + + TP_ARGS(start_pfn, end_pfn, nr_scanned, nr_taken), + + TP_STRUCT__entry( + __field(unsigned long, start_pfn) + __field(unsigned long, end_pfn) + __field(unsigned long, nr_scanned) + __field(unsigned long, nr_taken) + ), + + TP_fast_assign( + tp_assign(start_pfn, start_pfn) + tp_assign(end_pfn, end_pfn) + tp_assign(nr_scanned, nr_scanned) + tp_assign(nr_taken, nr_taken) + ), + + TP_printk("range=(0x%lx ~ 0x%lx) nr_scanned=%lu nr_taken=%lu", + __entry->start_pfn, + __entry->end_pfn, + __entry->nr_scanned, + __entry->nr_taken) +) + +LTTNG_TRACEPOINT_EVENT_INSTANCE(mm_compaction_isolate_template, mm_compaction_isolate_migratepages, + + TP_PROTO(unsigned long start_pfn, + unsigned long end_pfn, + unsigned long nr_scanned, + unsigned long nr_taken), + + TP_ARGS(start_pfn, end_pfn, nr_scanned, nr_taken) +) + +LTTNG_TRACEPOINT_EVENT_INSTANCE(mm_compaction_isolate_template, mm_compaction_isolate_freepages, + + TP_PROTO(unsigned long start_pfn, + unsigned long end_pfn, + unsigned long nr_scanned, + unsigned long nr_taken), + + TP_ARGS(start_pfn, end_pfn, nr_scanned, nr_taken) +) + +#else /* #if LINUX_VERSION_CODE >= KERNEL_VERSION(4,0,0) */ + +LTTNG_TRACEPOINT_EVENT_CLASS(mm_compaction_isolate_template, TP_PROTO(unsigned long nr_scanned, unsigned long nr_taken), @@ -31,7 +85,7 @@ DECLARE_EVENT_CLASS(mm_compaction_isolate_template, __entry->nr_taken) ) -DEFINE_EVENT(mm_compaction_isolate_template, mm_compaction_isolate_migratepages, +LTTNG_TRACEPOINT_EVENT_INSTANCE(mm_compaction_isolate_template, mm_compaction_isolate_migratepages, TP_PROTO(unsigned long nr_scanned, unsigned long nr_taken), @@ -39,15 +93,19 @@ DEFINE_EVENT(mm_compaction_isolate_template, mm_compaction_isolate_migratepages, TP_ARGS(nr_scanned, nr_taken) ) -DEFINE_EVENT(mm_compaction_isolate_template, mm_compaction_isolate_freepages, +LTTNG_TRACEPOINT_EVENT_INSTANCE(mm_compaction_isolate_template, mm_compaction_isolate_freepages, TP_PROTO(unsigned long nr_scanned, unsigned long nr_taken), TP_ARGS(nr_scanned, nr_taken) ) -#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,16,0)) -TRACE_EVENT(mm_compaction_migratepages, +#endif /* #else #if LINUX_VERSION_CODE >= KERNEL_VERSION(4,0,0) */ + +#if LTTNG_KERNEL_RANGE(3,12,30, 3,13,0) || \ + LTTNG_KERNEL_RANGE(3,14,25, 3,15,0) || \ + (LINUX_VERSION_CODE >= KERNEL_VERSION(3,16,0)) +LTTNG_TRACEPOINT_EVENT(mm_compaction_migratepages, TP_PROTO(unsigned long nr_all, int migrate_rc, @@ -88,7 +146,7 @@ TRACE_EVENT(mm_compaction_migratepages, __entry->nr_failed) ) #else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,16,0)) */ -TRACE_EVENT(mm_compaction_migratepages, +LTTNG_TRACEPOINT_EVENT(mm_compaction_migratepages, TP_PROTO(unsigned long nr_migrated, unsigned long nr_failed), @@ -111,7 +169,7 @@ TRACE_EVENT(mm_compaction_migratepages, ) #endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,16,0)) */ -#endif /* _TRACE_COMPACTION_H */ +#endif /* LTTNG_TRACE_COMPACTION_H */ /* This part must be outside protection */ #include "../../../probes/define_trace.h"