summaryrefslogtreecommitdiffstats
path: root/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-update-ext4-instrumentation-for-kernel-4.13.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-kernel/lttng/lttng-modules/0004-Fix-update-ext4-instrumentation-for-kernel-4.13.patch')
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0004-Fix-update-ext4-instrumentation-for-kernel-4.13.patch189
1 files changed, 189 insertions, 0 deletions
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-update-ext4-instrumentation-for-kernel-4.13.patch b/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-update-ext4-instrumentation-for-kernel-4.13.patch
new file mode 100644
index 0000000000..c835d06cf5
--- /dev/null
+++ b/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-update-ext4-instrumentation-for-kernel-4.13.patch
@@ -0,0 +1,189 @@
+From 500c99a45fc0da09d1dc7b9e62bf58d562856a9a Mon Sep 17 00:00:00 2001
+From: Michael Jeanson <mjeanson@efficios.com>
+Date: Mon, 21 Aug 2017 14:47:08 -0400
+Subject: [PATCH 4/8] Fix: update ext4 instrumentation for kernel 4.13
+Organization: O.S. Systems Software LTDA.
+
+See this upstream commit :
+
+ commit a627b0a7c15ee4d2c87a86d5be5c8167382e8d0d
+ Author: Eric Whitney <enwlinux@gmail.com>
+ Date: Sun Jul 30 22:30:11 2017 -0400
+
+ ext4: remove unused metadata accounting variables
+
+ Two variables in ext4_inode_info, i_reserved_meta_blocks and
+ i_allocated_meta_blocks, are unused. Removing them saves a little
+ memory per in-memory inode and cleans up clutter in several tracepoints.
+ Adjust tracepoint output from ext4_alloc_da_blocks() for consistency
+ and fix a typo and whitespace near these changes.
+
+Upstream-Status: Backport [2.9.4]
+
+ Signed-off-by: Eric Whitney <enwlinux@gmail.com>
+ Signed-off-by: Theodore Ts'o <tytso@mit.edu>
+ Reviewed-by: Jan Kara <jack@suse.cz>
+
+Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
+Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
+---
+ instrumentation/events/lttng-module/ext4.h | 96 ++++++++++++++++++++++++++----
+ 1 file changed, 86 insertions(+), 10 deletions(-)
+
+diff --git a/instrumentation/events/lttng-module/ext4.h b/instrumentation/events/lttng-module/ext4.h
+index e87b534..fe6f802 100644
+--- a/instrumentation/events/lttng-module/ext4.h
++++ b/instrumentation/events/lttng-module/ext4.h
+@@ -689,6 +689,19 @@ LTTNG_TRACEPOINT_EVENT(ext4_sync_fs,
+ )
+ )
+
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,13,0))
++LTTNG_TRACEPOINT_EVENT(ext4_alloc_da_blocks,
++ TP_PROTO(struct inode *inode),
++
++ TP_ARGS(inode),
++
++ TP_FIELDS(
++ ctf_integer(dev_t, dev, inode->i_sb->s_dev)
++ ctf_integer(ino_t, ino, inode->i_ino)
++ ctf_integer(unsigned int, data_blocks, EXT4_I(inode)->i_reserved_data_blocks)
++ )
++)
++#else
+ LTTNG_TRACEPOINT_EVENT(ext4_alloc_da_blocks,
+ TP_PROTO(struct inode *inode),
+
+@@ -701,6 +714,7 @@ LTTNG_TRACEPOINT_EVENT(ext4_alloc_da_blocks,
+ ctf_integer(unsigned int, meta_blocks, EXT4_I(inode)->i_reserved_meta_blocks)
+ )
+ )
++#endif
+
+ LTTNG_TRACEPOINT_EVENT(ext4_mballoc_alloc,
+ TP_PROTO(struct ext4_allocation_context *ac),
+@@ -833,17 +847,49 @@ LTTNG_TRACEPOINT_EVENT(ext4_forget,
+ )
+ #endif
+
+-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34))
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,13,0))
+ LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space,
+-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0))
+ TP_PROTO(struct inode *inode, int used_blocks, int quota_claim),
+
+ TP_ARGS(inode, used_blocks, quota_claim),
+-#else
++
++ TP_FIELDS(
++ ctf_integer(dev_t, dev, inode->i_sb->s_dev)
++ ctf_integer(ino_t, ino, inode->i_ino)
++ ctf_integer(__u64, i_blocks, inode->i_blocks)
++ ctf_integer(int, used_blocks, used_blocks)
++ ctf_integer(int, reserved_data_blocks,
++ EXT4_I(inode)->i_reserved_data_blocks)
++ ctf_integer(int, quota_claim, quota_claim)
++ ctf_integer(TP_MODE_T, mode, inode->i_mode)
++ )
++)
++#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0))
++LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space,
++ TP_PROTO(struct inode *inode, int used_blocks, int quota_claim),
++
++ TP_ARGS(inode, used_blocks, quota_claim),
++
++ TP_FIELDS(
++ ctf_integer(dev_t, dev, inode->i_sb->s_dev)
++ ctf_integer(ino_t, ino, inode->i_ino)
++ ctf_integer(__u64, i_blocks, inode->i_blocks)
++ ctf_integer(int, used_blocks, used_blocks)
++ ctf_integer(int, reserved_data_blocks,
++ EXT4_I(inode)->i_reserved_data_blocks)
++ ctf_integer(int, reserved_meta_blocks,
++ EXT4_I(inode)->i_reserved_meta_blocks)
++ ctf_integer(int, allocated_meta_blocks,
++ EXT4_I(inode)->i_allocated_meta_blocks)
++ ctf_integer(int, quota_claim, quota_claim)
++ ctf_integer(TP_MODE_T, mode, inode->i_mode)
++ )
++)
++#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34))
++LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space,
+ TP_PROTO(struct inode *inode, int used_blocks),
+
+ TP_ARGS(inode, used_blocks),
+-#endif
+
+ TP_FIELDS(
+ ctf_integer(dev_t, dev, inode->i_sb->s_dev)
+@@ -856,14 +902,27 @@ LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space,
+ EXT4_I(inode)->i_reserved_meta_blocks)
+ ctf_integer(int, allocated_meta_blocks,
+ EXT4_I(inode)->i_allocated_meta_blocks)
+-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0))
+- ctf_integer(int, quota_claim, quota_claim)
+-#endif
+ ctf_integer(TP_MODE_T, mode, inode->i_mode)
+ )
+ )
++#endif
+
+-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,2,0))
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,13,0))
++LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space,
++ TP_PROTO(struct inode *inode),
++
++ TP_ARGS(inode),
++
++ TP_FIELDS(
++ ctf_integer(dev_t, dev, inode->i_sb->s_dev)
++ ctf_integer(ino_t, ino, inode->i_ino)
++ ctf_integer(__u64, i_blocks, inode->i_blocks)
++ ctf_integer(int, reserved_data_blocks,
++ EXT4_I(inode)->i_reserved_data_blocks)
++ ctf_integer(TP_MODE_T, mode, inode->i_mode)
++ )
++)
++#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,2,0))
+ LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space,
+ TP_PROTO(struct inode *inode),
+
+@@ -880,7 +939,7 @@ LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space,
+ ctf_integer(TP_MODE_T, mode, inode->i_mode)
+ )
+ )
+-#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,2,0)) */
++#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34))
+ LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space,
+ TP_PROTO(struct inode *inode, int md_needed),
+
+@@ -898,8 +957,25 @@ LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space,
+ ctf_integer(TP_MODE_T, mode, inode->i_mode)
+ )
+ )
+-#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,2,0)) */
++#endif
++
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,13,0))
++LTTNG_TRACEPOINT_EVENT(ext4_da_release_space,
++ TP_PROTO(struct inode *inode, int freed_blocks),
++
++ TP_ARGS(inode, freed_blocks),
+
++ TP_FIELDS(
++ ctf_integer(dev_t, dev, inode->i_sb->s_dev)
++ ctf_integer(ino_t, ino, inode->i_ino)
++ ctf_integer(__u64, i_blocks, inode->i_blocks)
++ ctf_integer(int, freed_blocks, freed_blocks)
++ ctf_integer(int, reserved_data_blocks,
++ EXT4_I(inode)->i_reserved_data_blocks)
++ ctf_integer(TP_MODE_T, mode, inode->i_mode)
++ )
++)
++#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34))
+ LTTNG_TRACEPOINT_EVENT(ext4_da_release_space,
+ TP_PROTO(struct inode *inode, int freed_blocks),
+
+--
+2.14.1
+