Namespace kernel version macros
[lttng-modules.git] / lib / ringbuffer / ring_buffer_splice.c
index 52179a79986597f24352a5177f14cebfb02f0a9d..848f22154a0697698535846ff34fa8998862da4f 100644 (file)
@@ -12,7 +12,7 @@
 
 #include <linux/module.h>
 #include <linux/fs.h>
-#include <linux/version.h>
+#include <lttng-kernel-version.h>
 
 #include <wrapper/splice.h>
 #include <wrapper/ringbuffer/backend.h>
@@ -42,19 +42,38 @@ static void lib_ring_buffer_pipe_buf_release(struct pipe_inode_info *pipe,
        __free_page(pbuf->page);
 }
 
+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,8,0))
+static const struct pipe_buf_operations ring_buffer_pipe_buf_ops = {
+       .release = lib_ring_buffer_pipe_buf_release,
+       .try_steal = generic_pipe_buf_try_steal,
+       .get = generic_pipe_buf_get
+};
+#elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,1,0))
+static const struct pipe_buf_operations ring_buffer_pipe_buf_ops = {
+       .confirm = generic_pipe_buf_confirm,
+       .release = lib_ring_buffer_pipe_buf_release,
+       .steal = generic_pipe_buf_steal,
+       .get = generic_pipe_buf_get
+};
+#elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,15,0))
+static const struct pipe_buf_operations ring_buffer_pipe_buf_ops = {
+       .can_merge = 0,
+       .confirm = generic_pipe_buf_confirm,
+       .release = lib_ring_buffer_pipe_buf_release,
+       .steal = generic_pipe_buf_steal,
+       .get = generic_pipe_buf_get
+};
+#else
 static const struct pipe_buf_operations ring_buffer_pipe_buf_ops = {
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(5,1,0))
        .can_merge = 0,
-#endif
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,15,0))
        .map = generic_pipe_buf_map,
        .unmap = generic_pipe_buf_unmap,
-#endif
        .confirm = generic_pipe_buf_confirm,
        .release = lib_ring_buffer_pipe_buf_release,
        .steal = generic_pipe_buf_steal,
-       .get = generic_pipe_buf_get,
+       .get = generic_pipe_buf_get
 };
+#endif
 
 /*
  * Page release operation after splice pipe_to_file ends.
@@ -84,7 +103,7 @@ static int subbuf_splice_actor(struct file *in,
                .pages = pages,
                .nr_pages = 0,
                .partial = partial,
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,12,0))
+#if (LTTNG_LINUX_VERSION_CODE < LTTNG_KERNEL_VERSION(4,12,0))
                .flags = flags,
 #endif
                .ops = &ring_buffer_pipe_buf_ops,
This page took 0.026399 seconds and 4 git commands to generate.