From: Jan Rękorajski Date: Sat, 16 Sep 2017 08:25:26 +0000 (+0200) Subject: - updated to 2.10.0 with upstream fix for kernel 4.13 X-Git-Tag: auto/th/lttng-modules-2.10.0-1 X-Git-Url: https://git.pld-linux.org/?a=commitdiff_plain;h=f6e66b012b74bc981f301a751ab120a6a4c5021b;p=packages%2Flttng-modules.git - updated to 2.10.0 with upstream fix for kernel 4.13 --- diff --git a/kernel-4.13.patch b/kernel-4.13.patch new file mode 100644 index 0000000..4028b06 --- /dev/null +++ b/kernel-4.13.patch @@ -0,0 +1,181 @@ +commit cf101116238c2e18f6bf927822dbe47aa4e71dec +Author: Michael Jeanson +Date: Mon Aug 21 14:47:08 2017 -0400 + + Fix: update ext4 instrumentation for kernel 4.13 + + See this upstream commit : + + commit a627b0a7c15ee4d2c87a86d5be5c8167382e8d0d + Author: Eric Whitney + 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. + + Signed-off-by: Eric Whitney + Signed-off-by: Theodore Ts'o + Reviewed-by: Jan Kara + + Signed-off-by: Michael Jeanson + Signed-off-by: Mathieu Desnoyers + +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), + diff --git a/lttng-modules.spec b/lttng-modules.spec index 020e4cc..aaffe0e 100644 --- a/lttng-modules.spec +++ b/lttng-modules.spec @@ -12,13 +12,14 @@ Summary: LTTng 2.x kernel modules Summary(pl.UTF-8): Moduły jądra LTTng 2.x Name: %{pname}%{_alt_kernel} -Version: 2.9.3 +Version: 2.10.0 Release: %{rel}@%{_kernel_ver_str} License: GPL v2 Group: Base/Kernel Source0: http://lttng.org/files/lttng-modules/%{pname}-%{version}.tar.bz2 -# Source0-md5: 9abf694dddcc197988189ef65b496f4c +# Source0-md5: 874bcf80ce8c12ad669ddb991b2cc380 Patch0: build.patch +Patch1: kernel-4.13.patch URL: http://lttng.org/ %{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:2.6.38} %{?with_kernelsrc:%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-source >= 3:2.6.38}} @@ -88,6 +89,7 @@ p=`pwd`\ %prep %setup -q -n %{pname}-%{version} %patch0 -p1 +%patch1 -p1 %build %{expand:%build_kernel_packages}