Thread (7 messages) 7 messages, 3 authors, 2016-03-03

Re: selftests/powerpc: Remove -flto from common CFLAGS

From: Cyril Bur <hidden>
Date: 2016-02-29 23:08:35

On Mon, 29 Feb 2016 22:10:13 +1100 (AEDT)
Michael Ellerman [off-list ref] wrote:
Hi Suraj,

On Mon, 2016-29-02 at 06:29:55 UTC, Suraj Jitindar Singh wrote:
quoted
LTO can cause GCC to inline some functions which have attributes set. The  
You should define what LTO is the first time you use it.
quoted
act of inlining the functions can lead to GCC forgetting about the
attributes which leads to incorrect tests.
Notable example being: __attribute__((__target__("no-vsx")))  
That is probably a GCC bug, but we still need to work around it for now.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70010
quoted
LTO can also interact strangely with custom assembly functions and cause
tests to intermittently fail.  
That's probably Cyril writing bad asm :)
No doubt.
quoted
Both these cases are hard to detect and require manual inspection of
binaries which is unlikely to happen for all tests. Furthermore, LTO
optimisations are not necessary for selftests and correctness is paramount
and as such it is best to disable LTO.

LTO can be enabled on a per test basis.

A pseries_le_defconfig kernel on a POWER8 was used to determine that the
same subset of selftests pass and fail with and without -flto in the
common Makefile.

These tests always fail:
selftests: per_event_excludes [FAIL]
selftests: event_attributes_test [FAIL]
selftests: ebb_vs_cpu_event_test [FAIL]
selftests: cpu_event_vs_ebb_test [FAIL]
selftests: cpu_event_pinned_vs_ebb_test [FAIL]  
They shouldn't :)

Are you running as root? Bare metal or guest?
Interesting. I believe this was run baremetal as root. I'm going to test the
patch in qemu at root. Is there a list of expected failures in certain
situations?
quoted
selftests: ipc_unmuxed [FAIL]  
That one is expected.

cheers
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help