Thread (9 messages) 9 messages, 6 authors, 2016-08-03

Re: [memcg:auto-latest 238/243] include/linux/compiler-gcc.h:243:38: error: impossible constraint in 'asm'

From: oliver <oohall@gmail.com>
Date: 2016-08-01 12:41:30

On Mon, Aug 1, 2016 at 9:27 PM, Martin Liška [off-list ref] wrote:
On 08/01/2016 01:09 PM, Michal Hocko wrote:
quoted
[CC our gcc guy - I guess he has some theory for this]

On Sun 31-07-16 14:11:25, Michal Hocko wrote:
quoted
It seems that this has been already reported and Jason has noticed [1] that
the problem is in the disabled optimizations:

$ grep CRYPTO_DEV_UX500_DEBUG .config
CONFIG_CRYPTO_DEV_UX500_DEBUG=y

if I disable this particular option the code compiles just fine. I have
no idea what is wrong about the code but it seems to depend on
optimizations enabled which sounds a bit scrary...

[1] http://www.spinics.net/lists/linux-mm/msg109590.html
Hi.

The difference is that w/o any optimization level, GCC doesn't make %c0 an
intermediate integer operand [1] (see description of "i" constraint).
We recently hit a similar problem on ppc where the compiler couldn't
satisfy an "i" when it was wrapped in an function and optimisations
were disabled. The fix[1] was to change the function signature so that
it's arguments were explicitly const. I don't know enough about gcc to
tell if that behaviour is arch specific or not, but it's worth trying.

Oliver

[1] https://lists.ozlabs.org/pipermail/skiboot/2016-July/004061.html

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help