Version 2.12.17 stable-2.12 v2.12.17
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mon, 13 May 2024 18:54:36 +0000 (14:54 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mon, 13 May 2024 18:54:36 +0000 (14:54 -0400)
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Change-Id: I45e902486818e867e807d93d6c66f4a697ab7f0e

ChangeLog
instrumentation/events/lttng-module/timer.h
lttng-tracer.h
wrapper/page_alloc.c

index eeaf95b4bf553f9903252359da51c5d8256094cb..1197e12e4b10b5b4650c6fbd8f7ae239998b8fa6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2024-05-13 (National Leprechaun Day) 2.12.17
+       * page alloc wrapper: Fix get_pfnblock_flags_mask prototype
+       * Fix: timer_expire_entry changed in 4.19.312
+       * Fix: build kvm probe on EL 8.4+
+       * Fix: support ext4_journal_start on EL 8.4+
+       * Fix: correct RHEL range for kmem_cache_free define
+
 2024-03-21 (National Common Courtesy Day) 2.12.16
        * fix: lttng-probe-kvm-x86-mmu build with linux 6.6
        * docs: Add supported versions and fix-backport policy
 2024-03-21 (National Common Courtesy Day) 2.12.16
        * fix: lttng-probe-kvm-x86-mmu build with linux 6.6
        * docs: Add supported versions and fix-backport policy
index 1d69758cd56320aa02f51642b01109f6ce0f7b5b..d92e9b98bcdfe16bb103e06de9798044cf0e810f 100644 (file)
@@ -90,6 +90,7 @@ LTTNG_TRACEPOINT_EVENT(timer_start,
 #endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,2,0)) */
 
 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,2,0) || \
 #endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,2,0)) */
 
 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,2,0) || \
+       LTTNG_KERNEL_RANGE(4,19,312, 4,20,0) || \
        LTTNG_RHEL_KERNEL_RANGE(4,18,0,193,0,0, 4,19,0,0,0,0))
 /**
  * timer_expire_entry - called immediately before the timer callback
        LTTNG_RHEL_KERNEL_RANGE(4,18,0,193,0,0, 4,19,0,0,0,0))
 /**
  * timer_expire_entry - called immediately before the timer callback
index 6fdaa5e570491598af3abf112076dc4efce5f4c4..c8d2d2c9585267aacd806ba79ca8088b3961b73b 100644 (file)
@@ -28,7 +28,7 @@
 
 #define LTTNG_MODULES_MAJOR_VERSION 2
 #define LTTNG_MODULES_MINOR_VERSION 12
 
 #define LTTNG_MODULES_MAJOR_VERSION 2
 #define LTTNG_MODULES_MINOR_VERSION 12
-#define LTTNG_MODULES_PATCHLEVEL_VERSION 16
+#define LTTNG_MODULES_PATCHLEVEL_VERSION 17
 #define LTTNG_MODULES_EXTRAVERSION ""
 
 #define LTTNG_VERSION_NAME             "(Ta) Meilleure"
 #define LTTNG_MODULES_EXTRAVERSION ""
 
 #define LTTNG_VERSION_NAME             "(Ta) Meilleure"
index b464f4d19331facd14510bf6aeed8294ff1c5135..3353eed7cf975d345e8063619be80b0720439095 100644 (file)
                || LTTNG_DEBIAN_KERNEL_RANGE(3,16,7,9,0,0, 3,17,0,0,0,0) \
                || LTTNG_UBUNTU_KERNEL_RANGE(3,16,7,34, 3,17,0,0)))
 
                || LTTNG_DEBIAN_KERNEL_RANGE(3,16,7,9,0,0, 3,17,0,0,0,0) \
                || LTTNG_UBUNTU_KERNEL_RANGE(3,16,7,34, 3,17,0,0)))
 
+/* Include page_alloc wrapper before pageblock-flags.h. */
+#include <wrapper/page_alloc.h>
+
+#include <linux/pageblock-flags.h>
 #include <linux/kallsyms.h>
 #include <linux/mm_types.h>
 #include <linux/module.h>
 #include <wrapper/kallsyms.h>
 #include <linux/kallsyms.h>
 #include <linux/mm_types.h>
 #include <linux/module.h>
 #include <wrapper/kallsyms.h>
-#include <wrapper/page_alloc.h>
+#include <lttng-kernel-version.h>
+
+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,14,0))
+static
+unsigned long (*get_pfnblock_flags_mask_sym)(const struct page *page,
+               unsigned long pfn,
+               unsigned long mask);
+
+unsigned long wrapper_get_pfnblock_flags_mask(const struct page *page,
+               unsigned long pfn,
+               unsigned long mask)
+{
+       WARN_ON_ONCE(!get_pfnblock_flags_mask_sym);
+       if (get_pfnblock_flags_mask_sym) {
+               return get_pfnblock_flags_mask_sym(page, pfn, mask);
+       } else {
+               return -ENOSYS;
+       }
+}
+#elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,9,0))
+static
+unsigned long (*get_pfnblock_flags_mask_sym)(struct page *page,
+               unsigned long pfn,
+               unsigned long mask);
 
 
+unsigned long wrapper_get_pfnblock_flags_mask(struct page *page,
+               unsigned long pfn,
+               unsigned long mask)
+{
+       WARN_ON_ONCE(!get_pfnblock_flags_mask_sym);
+       if (get_pfnblock_flags_mask_sym) {
+               return get_pfnblock_flags_mask_sym(page, pfn, mask);
+       } else {
+               return -ENOSYS;
+       }
+}
+#else  /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,9,0)) */
 static
 unsigned long (*get_pfnblock_flags_mask_sym)(struct page *page,
                unsigned long pfn,
 static
 unsigned long (*get_pfnblock_flags_mask_sym)(struct page *page,
                unsigned long pfn,
@@ -42,6 +81,8 @@ unsigned long wrapper_get_pfnblock_flags_mask(struct page *page,
                return -ENOSYS;
        }
 }
                return -ENOSYS;
        }
 }
+#endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,9,0)) */
+
 EXPORT_SYMBOL_GPL(wrapper_get_pfnblock_flags_mask);
 
 int wrapper_get_pfnblock_flags_mask_init(void)
 EXPORT_SYMBOL_GPL(wrapper_get_pfnblock_flags_mask);
 
 int wrapper_get_pfnblock_flags_mask_init(void)
@@ -54,25 +95,6 @@ int wrapper_get_pfnblock_flags_mask_init(void)
 }
 EXPORT_SYMBOL_GPL(wrapper_get_pfnblock_flags_mask_init);
 
 }
 EXPORT_SYMBOL_GPL(wrapper_get_pfnblock_flags_mask_init);
 
-/*
- * Canary function to check for 'get_pfnblock_flags_mask()' at compile time.
- *
- * From 'include/linux/pageblock-flags.h':
- *
- *   unsigned long get_pfnblock_flags_mask(struct page *page,
- *                                         unsigned long pfn,
- *                                         unsigned long end_bitidx,
- *                                         unsigned long mask);
- */
-__attribute__((unused)) static
-unsigned long __canary__get_pfnblock_flags_mask(struct page *page,
-                                               unsigned long pfn,
-                                               unsigned long end_bitidx,
-                                               unsigned long mask)
-{
-       return get_pfnblock_flags_mask(page, pfn, end_bitidx, mask);
-}
-
 #else
 
 #include <linux/pageblock-flags.h>
 #else
 
 #include <linux/pageblock-flags.h>
This page took 0.040613 seconds and 4 git commands to generate.