Bug#908154: gcc-6: gcc either hangs or throws error about impossible asm constraints
Package: gcc-6
Version: 6.3.0-18+deb9u1
Severity: important
Dear Maintainer,
when trying to compile the Linux kernel for arch=i386 some configurations
of the kernel result in an error. See:
https://lore.kernel.org/lkml/alpine.LRH.2.21.1808262340040.22219@math.ut.ee/
https://lists.01.org/pipermail/kbuild-all/2018-September/052162.html
I have modified the asm statemnet in question with the following patch:
--- a/arch/x86/include/asm/cmpxchg.h
+++ b/arch/x86/include/asm/cmpxchg.h
@@ -245,7 +245,7 @@ extern void __add_wrong_size(void)
asm volatile(pfx "cmpxchg%c4b %2; sete %0" \
: "=a" (__ret), "+d" (__old2), \
"+m" (*(p1)), "+m" (*(p2)) \
- : "i" (2 * sizeof(long)), "a" (__old1), \
+ : "i" (2 * sizeof(long)), "0" (__old1), \
"b" (__new1), "c" (__new2)); \
__ret; \
})
With that kernel patch in place the error is gone, but gcc will be in an
endless loop when compiling mm/slub.c
-- System Information:
Debian Release: 9.5
APT prefers stable-updates
APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)
Kernel: Linux 4.9.0-7-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages gcc-6 depends on:
ii binutils 2.28-5
ii cpp-6 6.3.0-18+deb9u1
ii gcc-6-base 6.3.0-18+deb9u1
ii libc6 2.24-11+deb9u3
ii libcc1-0 6.3.0-18+deb9u1
ii libgcc-6-dev 6.3.0-18+deb9u1
ii libgcc1 1:6.3.0-18+deb9u1
ii libgmp10 2:6.1.2+dfsg-1
ii libisl15 0.18-1
ii libmpc3 1.0.3-1+b2
ii libmpfr4 3.1.5-1
ii libstdc++6 6.3.0-18+deb9u1
ii zlib1g 1:1.2.8.dfsg-5
Versions of packages gcc-6 recommends:
ii libc6-dev 2.24-11+deb9u3
Versions of packages gcc-6 suggests:
pn gcc-6-doc <none>
pn gcc-6-locales <none>
pn gcc-6-multilib <none>
pn libasan3-dbg <none>
pn libatomic1-dbg <none>
pn libcilkrts5-dbg <none>
pn libgcc1-dbg <none>
pn libgomp1-dbg <none>
pn libitm1-dbg <none>
pn liblsan0-dbg <none>
pn libmpx2-dbg <none>
pn libquadmath0-dbg <none>
pn libtsan0-dbg <none>
pn libubsan0-dbg <none>
-- no debconf information
Reply to: