[OE-core] [PATCH 0/5] kernel-yocto: misc build / config changes

Bruce Ashfield bruce.ashfield at gmail.com
Fri Aug 30 14:50:44 UTC 2019


On Fri, Aug 30, 2019 at 10:39 AM <richard.purdie at linuxfoundation.org> wrote:
>
> On Thu, 2019-08-29 at 11:32 -0400, Bruce Ashfield wrote:
> > On Thu, Aug 29, 2019 at 11:31 AM Bruce Ashfield
> > <bruce.ashfield at gmail.com> wrote:
> > > On Thu, Aug 29, 2019 at 11:28 AM Jonathan Rajotte-Julien
> > > <jonathan.rajotte-julien at efficios.com> wrote:
> > > > > FWIW: lttng-ust builds fine for me with the 5.2 kernel + 5.2
> > > > > headers,
> > > > > it is one of the things I build and test as part of
> > > > > core-image-kernel-dev.
> > > >
> > > > Even on ppc?
> > > >
> > >
> > > yup. I build all arches for core-image-kernel-dev, which includes
> > > all of lttng.
> >
> > but I've recently switched to RP's master-next branch, so hopefully a
> > difference in the configs will pop out.
>
> I'll post here about what I'm finding. eudev fails since SO_SNDTIMEO
> isn't defined. This comes from asm-generic/socket.h which asm/socket.h
> include.
>
> richard at jet:work/ppce300c3-poky-linux/eudev/3.2.8-r0/build/src/shared$ /media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot-native/usr/bin/powerpc-poky-linux/powerpc-poky-linux-gcc -m32 -mhard-float -mcpu=e300c3 -fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=/media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot -DHAVE_CONFIG_H -I. -I../../../eudev-3.2.8/src/shared -I../.. -DUDEV_ROOT_RUN=\"/run\" -include ../../config.h -O2 -pipe -g -feliminate-unused-debug-types -fmacro-prefix-map=/media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0=/usr/src/debug/eudev/3.2.8-r0 -fdebug-prefix-map=/media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0=/usr/src/debug/eudev/3.2.8-r0 -fdebug-prefix-map=/media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot= -fdebug-prefix-map=/media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot-native= -c ../../../eudev-3.2.8/src/shared/log.c  -fPIC -DPIC -o .libs/log.o
> ../../../eudev-3.2.8/src/shared/log.c: In function 'create_log_socket':
> ../../../eudev-3.2.8/src/shared/log.c:128:43: error: 'SO_SNDTIMEO' undeclared (first use in this function); did you mean 'SO_TXTIME'?
>   128 |         (void) setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, &tv, sizeof(tv));
>       |                                           ^~~~~~~~~~~
>       |                                           SO_TXTIME
>
> The file:
> ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot/usr/include/asm-generic/socket.h
> isn't included.
>
> if I put:
>
> #include <asm-generic/socket.h>
>
> at the top of log.c it will build, everything else doesn't.
>
> Debugging with gcc -e shows its including a different 'interesting' file.
>
> My build has a
> build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot-native/usr/lib/powerpc-poky-linux/gcc/powerpc-poky-linux/9.2.0/include-fixed/asm-generic/socket.h
> which looks totally wrong when I compare it to the real asm-generic/socket.h.

This is similar to what I was seeing on some early qemuppc builds as
well. fixincludes was tossing out the original file and putting in a
broken variant. I had to hide the "fixed" files to build. But then it
stopped happening, so I moved on.

I'm not familiar with how/when fixincludes fires, so I have no idea
about any possible races, etc, that could be happening.

I'll do some more research down that route to see if anything pops up.

Bruce

>
> Why this is in the toolchain I don't know and I'll have to investigate further.
>
> I worry it depends on which MACHINE you have set when you build gcc-cross-powerpc.
>
> So we have some progress/a lead but more to be done.
>
> Cheers,
>
> Richard
>
>


-- 
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


More information about the Openembedded-core mailing list