#include <linux/types.h>
#include <lttng/kernel-version.h>
-#if LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,0,0)
-
LTTNG_TRACEPOINT_EVENT_CLASS(compaction_isolate_template,
TP_PROTO(unsigned long start_pfn,
TP_ARGS(start_pfn, end_pfn, nr_scanned, nr_taken)
)
-#else /* #if LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,0,0) */
+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,9,0))
+LTTNG_TRACEPOINT_EVENT_MAP(mm_compaction_migratepages,
-LTTNG_TRACEPOINT_EVENT_CLASS(compaction_isolate_template,
+ compaction_migratepages,
- TP_PROTO(unsigned long nr_scanned,
- unsigned long nr_taken),
+ TP_PROTO(unsigned int nr_migratepages,
+ unsigned int nr_succeeded),
- TP_ARGS(nr_scanned, nr_taken),
+ TP_ARGS(nr_migratepages, nr_succeeded),
TP_FIELDS(
- ctf_integer(unsigned long, nr_scanned, nr_scanned)
- ctf_integer(unsigned long, nr_taken, nr_taken)
+ ctf_integer(unsigned long, nr_migrated, nr_succeeded)
+ ctf_integer(unsigned long, nr_failed, nr_migratepages - nr_succeeded)
)
)
+#elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,18,0) || \
+ LTTNG_RHEL_KERNEL_RANGE(5,14,0,163,0,0, 5,15,0,0,0,0))
+LTTNG_TRACEPOINT_EVENT_MAP(mm_compaction_migratepages,
-LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(compaction_isolate_template,
-
- mm_compaction_isolate_migratepages,
+ compaction_migratepages,
- compaction_isolate_migratepages,
+ TP_PROTO(struct compact_control *cc,
+ unsigned int nr_succeeded),
- TP_PROTO(unsigned long nr_scanned,
- unsigned long nr_taken),
+ TP_ARGS(cc, nr_succeeded),
- TP_ARGS(nr_scanned, nr_taken)
+ TP_FIELDS(
+ ctf_integer(unsigned long, nr_migrated, nr_succeeded)
+ ctf_integer(unsigned long, nr_failed, cc->nr_migratepages - nr_succeeded)
+ )
)
+#elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,17,0))
+LTTNG_TRACEPOINT_EVENT_MAP(mm_compaction_migratepages,
-LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(compaction_isolate_template,
-
- mm_compaction_isolate_freepages,
+ compaction_migratepages,
- compaction_isolate_freepages,
+ TP_PROTO(unsigned long nr_all,
+ unsigned int nr_succeeded),
- TP_PROTO(unsigned long nr_scanned,
- unsigned long nr_taken),
+ TP_ARGS(nr_all, nr_succeeded),
- TP_ARGS(nr_scanned, nr_taken)
+ TP_FIELDS(
+ ctf_integer(unsigned long, nr_migrated, nr_succeeded)
+ ctf_integer(unsigned long, nr_failed, nr_all - nr_succeeded)
+ )
)
-
-#endif /* #else #if LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,0,0) */
-
-#if LTTNG_KERNEL_RANGE(3,12,30, 3,13,0) || \
- LTTNG_KERNEL_RANGE(3,14,25, 3,15,0) || \
- (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,16,0))
+#else
LTTNG_TRACEPOINT_EVENT_CODE_MAP(mm_compaction_migratepages,
compaction_migratepages,
TP_code_post()
)
-#else /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,16,0)) */
-LTTNG_TRACEPOINT_EVENT_MAP(mm_compaction_migratepages,
-
- compaction_migratepages,
-
- TP_PROTO(unsigned long nr_migrated,
- unsigned long nr_failed),
-
- TP_ARGS(nr_migrated, nr_failed),
-
- TP_FIELDS(
- ctf_integer(unsigned long, nr_migrated, nr_migrated)
- ctf_integer(unsigned long, nr_failed, nr_failed)
- )
-)
#endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,16,0)) */
#endif /* LTTNG_TRACE_COMPACTION_H */