From mboxrd@z Thu Jan 1 00:00:00 1970 From: skumar.m226@gmail.com (kumar s) Date: Fri, 7 Feb 2014 10:08:51 +0530 Subject: [lttng-dev] Fwd: lib_ring_buffer_align error bit-field '' width not an integer constant In-Reply-To: References: <2097060417.17951.1391442624499.JavaMail.zimbra@efficios.com> <245022020.18739.1391525534666.JavaMail.zimbra@efficios.com> Message-ID: ---------- Forwarded message ---------- From: kumar s Date: Fri, Feb 7, 2014 at 10:08 AM Subject: Re: [lttng-dev] lib_ring_buffer_align error bit-field '' width not an integer constant To: Mathieu Desnoyers Hi, In bug.h, i removed the underlined lines and left only BUG_ON(condition). The modules got compiled without any errors, however are there any issues on removing the underlined lines. */ #define BUILD_RUNTIME_BUG_ON(condition) \ do { \ *- * * if (__builtin_constant_p(condition)) \ - BUILD_BUG_ON(condition); \- else * \ BUG_ON(condition); \ } while (0) thank you Skumar On Tue, Feb 4, 2014 at 8:22 PM, Mathieu Desnoyers < mathieu.desnoyers at efficios.com> wrote: > You might want to request help from Cavium, since they are the one > supporting > their toolchain. > > It really seems to be a Cavium-specific issue. > > Thanks, > > Mathieu > > > ------------------------------ > > *From: *"kumar s" > *To: *"Mathieu Desnoyers" > *Cc: *lttng-dev at lists.lttng.org > *Sent: *Tuesday, February 4, 2014 5:13:44 AM > *Subject: *Re: [lttng-dev] lib_ring_buffer_align error bit-field > '' width not an integer constant > > > Hi, > > The lttng module i use is the latest version, compiler toolchain cannot be > upgraded since it is provided by Cavium, kernel version is 2.6.32.27. > > Is there any change i need to do on lttng modules to build it? > > Thank you > SKumar > > > On Mon, Feb 3, 2014 at 9:20 PM, Mathieu Desnoyers < > mathieu.desnoyers at efficios.com> wrote: > >> ------------------------------ >> >> *From: *"kumar s" >> *To: *lttng-dev at lists.lttng.org >> *Sent: *Tuesday, December 3, 2013 3:20:02 AM >> *Subject: *[lttng-dev] lib_ring_buffer_align error bit-field >> '' width not an integer constant >> >> >> Hello, >> >> When trying to build lttng modules i am getting this error. Cross >> compiler for mips and Arch = mips is used in makefile. >> >> Linux kernel version 2.6.32.27 >> >> >> make -C >> /home/shkumar/Development_Merge/NewOCT/OCTEON_SDK/octeon_sdk/OCTEON-SDK/linux/kernel_2.6/linux >> M=/home/shkumar/lttng-tools/lttngmod/lttng-modules modules ARCH=mips >> CROSS_COMPILE=mips64-octeon-linux-gnu- >> make[1]: Entering directory >> `/home/shkumar/Development_Merge/NewOCT/OCTEON_SDK/octeon_sdk/OCTEON-SDK/linux/kernel_2.6/linux' >> CC [M] >> /home/shkumar/lttng-tools/lttngmod/lttng-modules/lttng-ring-buffer-client-discard.o >> In file included from >> /home/shkumar/lttng-tools/lttngmod/lttng-modules/wrapper/ringbuffer/config.h:1, >> from >> /home/shkumar/lttng-tools/lttngmod/lttng-modules/lttng-tracer-core.h:35, >> from >> /home/shkumar/lttng-tools/lttngmod/lttng-modules/lttng-tracer.h:39, >> from >> /home/shkumar/lttng-tools/lttngmod/lttng-modules/lttng-ring-buffer-client-discard.c:24: >> /home/shkumar/lttng-tools/lttngmod/lttng-modules/wrapper/ringbuffer/../../lib/ringbuffer/config.h: >> In function 'lib_ring_buffer_align': >> /home/shkumar/lttng-tools/lttngmod/lttng-modules/wrapper/ringbuffer/../../lib/ringbuffer/config.h:266: >> error: bit-field '' width not an integer constant >> make[2]: *** >> [/home/shkumar/lttng-tools/lttngmod/lttng-modules/lttng-ring-buffer-client-discard.o] >> Error 1 >> make[1]: *** [_module_/home/shkumar/lttng-tools/lttngmod/lttng-modules] >> Error 2 >> make[1]: Leaving directory >> `/home/shkumar/Development_Merge/NewOCT/OCTEON_SDK/octeon_sdk/OCTEON-SDK/linux/kernel_2.6/linux' >> make: *** [default] Error 2 >> >> How do i fix this? >> >> >> This is caused by the use of offset_align(), passing incorrect >> parameters, detected by the compiler: >> >> see lttng-modules >> >> lib/align.h: >> >> #define offset_align(align_drift, >> alignment) \ >> >> ({ \ >> BUILD_RUNTIME_BUG_ON((alignment) == >> 0 \ >> || ((alignment) & ((alignment) - >> 1))); \ >> (((alignment) - (align_drift)) & ((alignment) - >> 1)); \ >> }) >> >> See also lttng-modules >> lib/bug.h >> >> So there are two things that are possible: either the compiler you use >> does not perform the >> optimisations that are expected, and therefore triggers the >> BUILD_BUG_ON() without needing to, >> or there really is an incorrect value passed to offset_align(). >> >> Make sure lttng-modules, your compiler toolchain, and your kernel are up >> to date. >> >> Thanks, >> >> Mathieu >> >> >> Skumar. >> >> _______________________________________________ >> lttng-dev mailing list >> lttng-dev at lists.lttng.org >> http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev >> >> >> >> >> -- >> Mathieu Desnoyers >> EfficiOS Inc. >> http://www.efficios.com >> > > > > > -- > Mathieu Desnoyers > EfficiOS Inc. > http://www.efficios.com > -------------- next part -------------- An HTML attachment was scrubbed... URL: