diff options
| -rw-r--r-- | meta/recipes-kernel/lttng/lttng-modules/fix_build_with_v3.17_kernel.patch | 113 | ||||
| -rw-r--r-- | meta/recipes-kernel/lttng/lttng-modules_2.5.0.bb | 1 | 
2 files changed, 114 insertions, 0 deletions
| diff --git a/meta/recipes-kernel/lttng/lttng-modules/fix_build_with_v3.17_kernel.patch b/meta/recipes-kernel/lttng/lttng-modules/fix_build_with_v3.17_kernel.patch new file mode 100644 index 0000000000..97b7a53a07 --- /dev/null +++ b/meta/recipes-kernel/lttng/lttng-modules/fix_build_with_v3.17_kernel.patch @@ -0,0 +1,113 @@ + +Upstream-Status: Backport + +commit 7df57eb5d6bdc85ddcf2b9afb6cd0cacfb22096e +Author: Nitin A Kamble <nitin.a.kamble@intel.com> +Date:   Thu Sep 25 18:19:43 2014 -0700 + +    asoc.h: fix build with v3.17 kernel +     +    The snd_soc_codec structure has changed in the v3.17 kernel. Some +    of the redundant fields have been removed. To be specific this commit +    from the v3.17 kernel causes the build failure for lttng-modules. +     +    |commit f4333203ec933f9272c90c7add01774ec2cf94d3 +    |Author: Lars-Peter Clausen <lars@metafoo.de> +    |Date:   Mon Jun 16 18:13:02 2014 +0200 +    | +    |    ASoC: Move name and id from CODEC/platform to component +    | +    |    The component struct already has a name and id field which are initialized to +    |    the same values as the same fields in the CODEC and platform structs. So remove +    |    them from the CODEC and platform structs and used the ones from the component +    |    struct instead. +    | +    |    Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> +    |    Signed-off-by: Mark Brown <broonie@linaro.org> +     +    The asoc.h is changed according to the change in the above kernel commit +    to fix the lttng-modules build. The change in the lttng-modules code is +    conditional on the kernel version, so that it does not break builds with +    previous kernel versions. +     +    Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> +    Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> + +diff --git a/instrumentation/events/lttng-module/asoc.h b/instrumentation/events/lttng-module/asoc.h +index 672bea4..bf9cf86 100644 +--- a/instrumentation/events/lttng-module/asoc.h ++++ b/instrumentation/events/lttng-module/asoc.h +@@ -21,6 +21,14 @@ struct snd_soc_card; + struct snd_soc_dapm_widget; + #endif +  ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,16,0)) ++#define CODEC_NAME_FIELD component.name ++#define CODEC_ID_FIELD component.id ++#else ++#define CODEC_NAME_FIELD name ++#define CODEC_ID_FIELD id ++#endif ++ + /* +  * Log register events +  */ +@@ -32,15 +40,15 @@ DECLARE_EVENT_CLASS(snd_soc_reg, + 	TP_ARGS(codec, reg, val), +  + 	TP_STRUCT__entry( +-		__string(	name,		codec->name	) ++		__string(	name,		codec->CODEC_NAME_FIELD	) + 		__field(	int,		id		) + 		__field(	unsigned int,	reg		) + 		__field(	unsigned int,	val		) + 	), +  + 	TP_fast_assign( +-		tp_strcpy(name, codec->name) +-		tp_assign(id, codec->id) ++		tp_strcpy(name, codec->CODEC_NAME_FIELD) ++		tp_assign(id, codec->CODEC_ID_FIELD) + 		tp_assign(reg, reg) + 		tp_assign(val, val) + 	), +@@ -77,15 +85,15 @@ DECLARE_EVENT_CLASS(snd_soc_preg, + 	TP_ARGS(platform, reg, val), +  + 	TP_STRUCT__entry( +-		__string(	name,		platform->name	) ++		__string(	name,		platform->CODEC_NAME_FIELD	) + 		__field(	int,		id		) + 		__field(	unsigned int,	reg		) + 		__field(	unsigned int,	val		) + 	), +  + 	TP_fast_assign( +-		tp_strcpy(name, platform->name) +-		tp_assign(id, platform->id) ++		tp_strcpy(name, platform->CODEC_NAME_FIELD) ++		tp_assign(id, platform->CODEC_ID_FIELD) + 		tp_assign(reg, reg) + 		tp_assign(val, val) + 	), +@@ -399,17 +407,17 @@ TRACE_EVENT(snd_soc_cache_sync, + 	TP_ARGS(codec, type, status), +  + 	TP_STRUCT__entry( +-		__string(	name,		codec->name	) ++		__string(	name,		codec->CODEC_NAME_FIELD	) + 		__string(	status,		status		) + 		__string(	type,		type		) + 		__field(	int,		id		) + 	), +  + 	TP_fast_assign( +-		tp_strcpy(name, codec->name) ++		tp_strcpy(name, codec->CODEC_NAME_FIELD) + 		tp_strcpy(status, status) + 		tp_strcpy(type, type) +-		tp_assign(id, codec->id) ++		tp_assign(id, codec->CODEC_ID_FIELD) + 	), +  + 	TP_printk("codec=%s.%d type=%s status=%s", __get_str(name), diff --git a/meta/recipes-kernel/lttng/lttng-modules_2.5.0.bb b/meta/recipes-kernel/lttng/lttng-modules_2.5.0.bb index 04e2b0cccc..6ff961a9b1 100644 --- a/meta/recipes-kernel/lttng/lttng-modules_2.5.0.bb +++ b/meta/recipes-kernel/lttng/lttng-modules_2.5.0.bb @@ -21,6 +21,7 @@ SRC_URI = "git://git.lttng.org/lttng-modules.git;branch=stable-2.5 \             file://Fix-noargs-probes-should-calculate-alignment-and-eve.patch \             file://Update-statedump-to-3.17-nsproxy-locking.patch \             file://Update-kvm-instrumentation-compile-on-3.17-rc1.patch \ +           file://fix_build_with_v3.17_kernel.patch \             "  export INSTALL_MOD_DIR="kernel/lttng-modules" | 
