Created attachment 2900 [details] workaround compiling kernel with yocto gcc 5.2 produces non functional kernel. compiled same source tree, standalone with gcc4.5[2] and through yocto with recipe[3] with gcc5.2[4]. output from gcc5.2 contains random spaces in output: PID hash table entries: 256 (order: -2, 1024 bytes) <- gcc 4.5 PID hash table entries: 256 (order: -2, 1024 bytes) <- gcc 5.2 Dentry cache hash table entries: 8192 (order: 3, 32768 bytes) <- gcc 4.5 Dentry cache hash table entries: 8192 (order: 3, 32768 bytes) <- gcc 5.2 It seems the spaces are introduced when a comparison between s16 and int incorrectly evaluates to true, see attached bug [1] https://git.digitalstrom.org/bsp/linux/tree/digitalStrom-imx6_4.1 [2] gcc version 4.9.3 20141031 (prerelease) (Linaro GCC 2014.11) [3] https://git.digitalstrom.org/dss-oe/dss-oe/blob/master/yocto/dS/meta-digitalstrom-devel/recipes-kernel/linux/linux-rescue_4.1.0.bb [4] arm-poky-linux-gnueabi-gcc (GCC) 5.2.0 # uname -a Linux dSS-kit 4.1.4+ #213 PREEMPT Tue Dec 15 09:23:56 CET 2015 armv5tejl GNU/Linux Machine: Atmel AT91SAM9G20EK Development Platform
can you try gcc 5.3 from master ? or backport https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67442 see if it helps
Andreas can you answer Kim's question.
Bug disappeared when upgrading to 4.1.19. I bisected it to this commit: https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/commit/?id=a077224fd35b2f7fbc93f14cf67074fc792fbac2 It's a workaround, disables an optimization. This is the GCC bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65932 It says it's fixed for GCC 5.4 and GCC 6