RP, Saul,
  FYI, The fix for lttng-modules has gone upstream now. I have updated the
patch accordingly on the contrib branch.

Thanks,
Nitin


On 9/25/14, 7:00 PM, "Kamble, Nitin A" <nitin.a.kam...@intel.com> wrote:

>From: Nitin A Kamble <nitin.a.kam...@intel.com>
>
>The lttng-modules recipe was failing for meta-intel BSPs with the v3.17
>kernel.
>These BSP kernels were enabling some of the audio codec drivers, whose
>structures are changed recently, causing mismatch with lttng-modules code
>expectations. The qemu machines did not see this issue as they were not
>enabling these sound codec kernel configuration.
>  Fix the build issue, by changing the lttng-modules code to match with
>the structures used by the v3.17 kernel. The code is conditional on the
>kernel version, that way it keeps working with the older kernel versions.
>
>Signed-off-by: Nitin A Kamble <nitin.a.kam...@intel.com>
>---
> .../fix_build_with_v3.17_kernel.patch              | 111
>+++++++++++++++++++++
> meta/recipes-kernel/lttng/lttng-modules_2.5.0.bb   |   1 +
> 2 files changed, 112 insertions(+)
> create mode 100644
>meta/recipes-kernel/lttng/lttng-modules/fix_build_with_v3.17_kernel.patch
>
>diff --git 
>a/meta/recipes-kernel/lttng/lttng-modules/fix_build_with_v3.17_kernel.patc
>h 
>b/meta/recipes-kernel/lttng/lttng-modules/fix_build_with_v3.17_kernel.patc
>h
>new file mode 100644
>index 0000000..86dfa69
>--- /dev/null
>+++ 
>b/meta/recipes-kernel/lttng/lttng-modules/fix_build_with_v3.17_kernel.patc
>h
>@@ -0,0 +1,111 @@
>+Upstream-Status: Pending
>+
>+commit 91ec0897b50c9d3f215ce6790b30bc319a136a4e
>+Author: Nitin A Kamble <nitin.a.kam...@intel.com>
>+Date:   Thu Sep 25 16:51:24 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 <l...@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 <l...@metafoo.de>
>+    |    Signed-off-by: Mark Brown <broo...@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.kam...@intel.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 04e2b0c..6ff961a 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"
>-- 
>1.8.1.4
>

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to