On Tue, Apr 15, 2014 at 09:12:30PM -0400, Denys Dmytriyenko wrote: > On Wed, Apr 16, 2014 at 12:36:58AM +0100, Richard Purdie wrote: > > On Tue, 2014-04-15 at 15:43 -0400, Denys Dmytriyenko wrote: > > > I don't yet know what is going on, but building in the same directory > > > with > > > sources (B = S) makes it work regarless of the path length: > > > > > > /OE/RAM/poky-111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111/22222222222222222222222222222222222222222222222222222222222222222222/3333333333333333333333333333333333333333333333333333/tmp/work/beaglebone-poky-linux-gnueabi/linux-yocto/3.14+gitAUTOINC+928d7b2dda_0143c6ebb4-r0/linux > > > > > > So, I just commented out setting kernel-specific B in linux-yocto.inc and > > > any > > > kernel now boots with long path: > > > > > > #B = "${WORKDIR}/linux-${PACKAGE_ARCH}-${LINUX_KERNEL_TYPE}-build" > > > > > > I'm copying Richard and Bruce directly to see if they may have a quick > > > insight > > > and/or accept it as a workaround for the release. I'll keep digging > > > further, > > > but if anyone cares to verify the above workaround works for them, I > > > would > > > appreciate. Thanks! > > > > I'm travelling and don't have hardware so I'm limited in what I can look > > at right now. I suspect this workaround "works" because it makes the > > "beaglebone-standard-build" extra characters on the path. I have a > > feeling your -1111111 test above may have reused sstate or something > > like that and given misleading results. I'd be interested in the vmlinux > > file from the build above to see if the poky-111111 pathnames are in > > there (they get stripped out when you create the zImage). > > Nope, I was fooled by sstate once, so this time I tested with cleansstate and > compared timestamps of the kernel when it boots - it is definitely the new > one. And to make sure 'beaglebone-standard-build' extra suffix doesn't affect > it, I increased the path length even further - that extra level with 333 is > there to over-compensate, as it was failing before even with just 111 and 222 > levels only... Looks like Gary was also able to verify it. > > But, you are right about vmlinux - it doesn't have those paths in there any > more! I've seen them there when building with B != S, but they are gone when > building with B = S. Wondering why. You can check it for yourself: > > http://arago-project.org/files/short-term/misc/vmlinux-3.14.0-yocto-standard
And, as a follow up, all those long paths in vmlinux when built with B != S point to sources. Here are few examples: B != S strings: /OE/RAM/poky/tmp/work/beaglebone-poky-linux-gnueabi/linux-yocto/3.14+gitAUTOINC+928d7b2dda_0143c6ebb4-r0/linux/init/main.c earlycon 4Malformed early option '%s' 3Starting init: %s exists but couldn't execute it (error %d) ... 6Trying to unpack rootfs image as initramfs... /OE/RAM/poky/tmp/work/beaglebone-poky-linux-gnueabi/linux-yocto/3.14+gitAUTOINC+928d7b2dda_0143c6ebb4-r0/linux/init/initramfs.c 6rootfs image is not initramfs (%s); looks like an initrd TRAILER!!! ... %lu.%02lu BogoMIPS (lpj=%lu) /OE/RAM/poky/tmp/work/beaglebone-poky-linux-gnueabi/linux-yocto/3.14+gitAUTOINC+928d7b2dda_0143c6ebb4-r0/linux/arch/arm/vfp/vfpmodule.c 6VFP support v0.3: B = S same strings: init/main.c earlycon 4Malformed early option '%s' 3Starting init: %s exists but couldn't execute it (error %d) ... 6Trying to unpack rootfs image as initramfs... init/initramfs.c 6rootfs image is not initramfs (%s); looks like an initrd TRAILER!!! ... %lu.%02lu BogoMIPS (lpj=%lu) arch/arm/vfp/vfpmodule.c 6VFP support v0.3: So, that explains why B = S works regardless of the location, as it doesn't embed full path to source files... -- Denys -- _______________________________________________ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto