Wind River Support Network

HomeDefectsLIN6-7388
Fixed

LIN6-7388 : lttng2: kernel build fails with trace_rcu_utilization error

Created: May 12, 2014    Updated: Dec 3, 2018
Resolved Date: May 18, 2014
Found In Version: 6.0.0.6
Fix Version: 6.0.0.7
Severity: Standard
Applicable for: Wind River Linux 6
Component/s: Kernel

Description

When building with lttng2, the kernel build fails with the error - seen with both qemumips64 and intel x86-64 board types:

| In file included from /WRL6_CGP/workspace/qemumips-64_lpp_prj/bitbake_build/tmp/work/qemumips64-wrs-linux/linux-windriver/3.10-r0/linux/drivers/staging/lttng2/probes/../instrumentation/events/lttng-module/../../../probes/lttng-events.h:157:0,
|                  from /WRL6_CGP/workspace/qemumips-64_lpp_prj/bitbake_build/tmp/work/qemumips64-wrs-linux/linux-windriver/3.10-r0/linux/drivers/staging/lttng2/probes/../instrumentation/events/lttng-module/../../../probes/define_trace.h:148,
|                  from /WRL6_CGP/workspace/qemumips-64_lpp_prj/bitbake_build/tmp/work/qemumips64-wrs-linux/linux-windriver/3.10-r0/linux/drivers/staging/lttng2/probes/../instrumentation/events/lttng-module/rcu.h:759,
|                  from /WRL6_CGP/workspace/qemumips-64_lpp_prj/bitbake_build/tmp/work/qemumips64-wrs-linux/linux-windriver/3.10-r0/linux/drivers/staging/lttng2/probes/lttng-probe-rcu.c:40:
| /WRL6_CGP/workspace/qemumips-64_lpp_prj/bitbake_build/tmp/work/qemumips64-wrs-linux/linux-windriver/3.10-r0/linux/drivers/staging/lttng2/probes/../instrumentation/events/lttng-module/../../../probes/../instrumentation/events/lttng-module/rcu.h:21:7: error: conflicting types for 'trace_rcu_utilization'
|  TRACE_EVENT(rcu_utilization,
|        ^
| In file included from /WRL6_CGP/workspace/qemumips-64_lpp_prj/bitbake_build/tmp/work/qemumips64-wrs-linux/linux-windriver/3.10-r0/linux/drivers/staging/lttng2/probes/lttng-probe-rcu.c:31:0:
| /WRL6_CGP/workspace/qemumips-64_lpp_prj/bitbake_build/tmp/work/qemumips64-wrs-linux/linux-windriver/3.10-r0/linux/include/trace/events/rcu.h:20:146: note: previous definition of 'trace_rcu_utilization' was here
|  TRACE_EVENT(rcu_utilization,
|                                                                                                                                                   ^
| make[6]: *** [drivers/staging/lttng2/probes/lttng-probe-rcu.o] Error 1
| make[6]: *** Waiting for unfinished jobs....

---
Note: 

git whatchanged shows fix for LIN6-7209 is present. 

commit 05aafac132a8cbd9fd0631271a33c3f2ae9b1197
Author: Nam Ninh <nam.ninh@windriver.com>
Date:   Thu Apr 17 13:11:30 2014 -0400

    lttng2: Fix build error related to trace_rcu.
    
    This is the fix for following build error:
    
    ovp-kvm/bitbake_build/tmp/work/intel_x86_64-wrs-linux/linux-windriver/3.10-r
    |  void trace_##_name(_proto);
    
    rcutree.c defines the argument passed to trace_rcu_utilization to be TPS(x)
    which is of type "const char *" while TRACE_EVENT for rcu_utilization
    defines the argument to be "char *), so there is a conflicting types for
    trace_rcu_utilization
---

Steps to Reproduce

Configure a LPP with the following configure line: 

/WRL6_CGP/wrlinux-6/wrlinux/configure --enable-board=qemumips64 --enable-build=profiling --enable-ccache=yes --enable-checkout-all-layers=yes --enable-jobs=3 --enable-kernel=standard --enable-parallel-pkgbuilds=3 --enable-rm-oldimgs=yes --enable-rootfs=glibc_small+debug --with-layer=/WRL6_CGP/wrlinux-6/layers/examples/lemon_layer --with-sstate-dir=/wrl_cache --with-template=feature/demo,feature/code_coverage,feature/analysis,feature/gdb,feature/lttng2,feature/lttng-init

Perform a make fs and observe build failure.  (x86-64 + glibc_std also shows failure.

Other Downloads


Live chat
Online