* bug#22337: Breakage on amd64 when built with -O1 and higher
@ 2016-01-09 13:47 Andreas Metzler
2016-01-09 14:57 ` Ludovic Courtès
0 siblings, 1 reply; 6+ messages in thread
From: Andreas Metzler @ 2016-01-09 13:47 UTC (permalink / raw)
To: 22337; +Cc: Ludovic Courtès
Hello,
this is <https://bugs.debian.org/809608>:
Debian used to build guile-2.0 without optimization, after changing to
-O2 random segfaults in guile-gnutls testsuite started to appear on
amd64.
This is easily reproducible by building gnutls 3.3.x (18, 19, 20
tested) on amd64 and running the guile testsuite until it fails:
(sid)ametzler@argenau:/tmp/GNUTLS/gnutls-3.3.20$ cd guile/tests
(sid)ametzler@argenau:/tmp/GNUTLS/gnutls-3.3.20/guile/tests$ j=0 ; rm openpgp-auth.scm.log openpgp-auth.scm.trs test-suite.log ; while make test-suite.log TEST_LOGS=openpgp-auth.scm.log ; do j=$(($j+1)) ; sleep .01 ; rm openpgp-auth.scm.log openpgp-auth.scm.trs test-suite.log ; done ; echo xxx $j
This will usually be the case after run #1 or #2.
The issue not Debian specific, I also see this with GIT stable-2.0.
Both Ludovic and me have managed to generate backtraces:
http://article.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/8372
http://article.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/8379
cu Andreas
--
`What a good friend you are to him, Dr. Maturin. His other friends are
so grateful to you.'
`I sew his ears on from time to time, sure'
^ permalink raw reply [flat|nested] 6+ messages in thread
* bug#22337: Breakage on amd64 when built with -O1 and higher
2016-01-09 13:47 bug#22337: Breakage on amd64 when built with -O1 and higher Andreas Metzler
@ 2016-01-09 14:57 ` Ludovic Courtès
2016-01-09 15:45 ` Andreas Metzler
2016-08-07 11:19 ` Andy Wingo
0 siblings, 2 replies; 6+ messages in thread
From: Ludovic Courtès @ 2016-01-09 14:57 UTC (permalink / raw)
To: Andreas Metzler; +Cc: 22337
Andreas Metzler <ametzler@bebt.de> skribis:
> Debian used to build guile-2.0 without optimization, after changing to
> -O2 random segfaults in guile-gnutls testsuite started to appear on
> amd64.
Are you sure the GnuTLS issue has anything to do with that?
Guile has always been built with ‘-O2 -g’ by default, and building with
‘-O0’ has never really been supported (the VM engine could eat too much
stack space and do silly things.)
Ludo’.
^ permalink raw reply [flat|nested] 6+ messages in thread
* bug#22337: Breakage on amd64 when built with -O1 and higher
2016-01-09 14:57 ` Ludovic Courtès
@ 2016-01-09 15:45 ` Andreas Metzler
2016-08-07 11:19 ` Andy Wingo
1 sibling, 0 replies; 6+ messages in thread
From: Andreas Metzler @ 2016-01-09 15:45 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: 22337
On 2016-01-09 Ludovic Courtès <ludo@gnu.org> wrote:
> Andreas Metzler <ametzler@bebt.de> skribis:
> > Debian used to build guile-2.0 without optimization, after changing to
> > -O2 random segfaults in guile-gnutls testsuite started to appear on
> > amd64.
> Are you sure the GnuTLS issue has anything to do with that?
> Guile has always been built with ‘-O2 -g’ by default, and building with
> ‘-O0’ has never really been supported (the VM engine could eat too much
> stack space and do silly things.)
Hello,
Yes, I have now built guile more than a dozen times.
And I have just doublechecked again, comparing builds of
http://snapshot.debian.org/archive/debian/20141008T040958Z/pool/main/g/guile-2.0/guile-2.0_2.0.11%2B1-9.dsc
and
http://snapshot.debian.org/archive/debian/20150906T035304Z/pool/main/g/guile-2.0/guile-2.0_2.0.11%2B1-10.dsc
:
buildlog.guile-2.0_2.0.11+1-9_amd64:
make[1]: Leaving directory '/tmp/GUILE/guile-2.0-2.0.11+1-9'
dh_auto_build -O--parallel
make -j5
make[1]: Entering directory '/tmp/GUILE/guile-2.0-2.0.11+1-9'
make -C libguile scmconfig.h
make[2]: Entering directory '/tmp/GUILE/guile-2.0-2.0.11+1-9/libguile'
\
if [ "no" = "yes" ]; then \
gcc -DHAVE_CONFIG_H -I.. \
-c -o gen-scmconfig.o gen-scmconfig.c; \
else \
gcc -DHAVE_CONFIG_H -DBUILDING_LIBGUILE=1 -I.. -I.. -I../lib -I../lib -I/tmp/GUILE/guile-2.0-2.0.11+1-9 -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Wmissing-prototypes -Wdeclaration-after-statement -Wpointer-arith -Wswitch-enum -fno-strict-aliasing -fwrapv -fvisibility=hidden -DPACKAGE_PACKAGER='"Debian"' -DPACKAGE_PACKAGER_VERSION='"2.0.11-deb+1-9"' -DPACKAGE_PACKAGER_BUG_REPORTS='"http://www.debian.org/Bugs/Reporting"' -c -o gen-scmconfig.o gen-scmconfig.c; \
fi
\
buildlog.guile-2.0_2.0.11+1-10_amd64
dh_auto_build -O--parallel
make -j5
make[1]: Entering directory '/tmp/GUILE/guile-2.0-2.0.11+1-10'
make -C libguile scmconfig.h
make[2]: Entering directory '/tmp/GUILE/guile-2.0-2.0.11+1-10/libguile'
\
if [ "no" = "yes" ]; then \
gcc -DHAVE_CONFIG_H -I.. \
-c -o gen-scmconfig.o gen-scmconfig.c; \
else \
gcc -DHAVE_CONFIG_H -DBUILDING_LIBGUILE=1 -I.. -I.. -I../lib -I../lib -I/tmp/GUILE/guile-2.0-2.0.11+1-10 -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Wmissing-prototypes -Wdeclaration-after-statement -Wpointer-arith -Wswitch-enum -fno-strict-aliasing -fwrapv -fvisibility=hidden -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -DPACKAGE_PACKAGER='"Debian"' -DPACKAGE_PACKAGER_VERSION='"2.0.11-deb+1-10"' -DPACKAGE_PACKAGER_BUG_REPORTS='"http://www.debian.org/Bugs/Reporting"' -c -o gen-scmconfig.o gen-scmconfig.c; \
fi
As you can see the former has no -Ox option, the latter has -O2. The
old debian/rules was buggy.
Downgrade guile to 2.0.11+1-9 from snapshots and the issue goes away.
cu Andreas
--
`What a good friend you are to him, Dr. Maturin. His other friends are
so grateful to you.'
`I sew his ears on from time to time, sure'
^ permalink raw reply [flat|nested] 6+ messages in thread
* bug#22337: Breakage on amd64 when built with -O1 and higher
2016-01-09 14:57 ` Ludovic Courtès
2016-01-09 15:45 ` Andreas Metzler
@ 2016-08-07 11:19 ` Andy Wingo
2017-02-28 14:45 ` Andy Wingo
1 sibling, 1 reply; 6+ messages in thread
From: Andy Wingo @ 2016-08-07 11:19 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: 22337, Andreas Metzler
On Sat 09 Jan 2016 15:57, ludo@gnu.org (Ludovic Courtès) writes:
> Andreas Metzler <ametzler@bebt.de> skribis:
>
>> Debian used to build guile-2.0 without optimization, after changing to
>> -O2 random segfaults in guile-gnutls testsuite started to appear on
>> amd64.
>
> Are you sure the GnuTLS issue has anything to do with that?
>
> Guile has always been built with ‘-O2 -g’ by default, and building with
> ‘-O0’ has never really been supported (the VM engine could eat too much
> stack space and do silly things.)
Apparently this is still an issue. Debian actually reverted to
compiling Guile with -O0:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=809608
Which is terrible of course. Surely it is a bug in the Guile GnuTLS
bindings and not in Guile proper. Compiling Guile with -O2 probably
holds on to less garbage; could it be that GnuTLS is erroneously not
making its data structures visible?
Andy
^ permalink raw reply [flat|nested] 6+ messages in thread
* bug#22337: Breakage on amd64 when built with -O1 and higher
2016-08-07 11:19 ` Andy Wingo
@ 2017-02-28 14:45 ` Andy Wingo
2017-02-28 16:37 ` Andreas Metzler
0 siblings, 1 reply; 6+ messages in thread
From: Andy Wingo @ 2017-02-28 14:45 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: 22337-done, Andreas Metzler
On Sun 07 Aug 2016 13:19, Andy Wingo <wingo@pobox.com> writes:
> On Sat 09 Jan 2016 15:57, ludo@gnu.org (Ludovic Courtès) writes:
>
>> Andreas Metzler <ametzler@bebt.de> skribis:
>>
>>> Debian used to build guile-2.0 without optimization, after changing to
>>> -O2 random segfaults in guile-gnutls testsuite started to appear on
>>> amd64.
>>
>> Are you sure the GnuTLS issue has anything to do with that?
>>
>> Guile has always been built with ‘-O2 -g’ by default, and building with
>> ‘-O0’ has never really been supported (the VM engine could eat too much
>> stack space and do silly things.)
>
> Apparently this is still an issue. Debian actually reverted to
> compiling Guile with -O0:
>
> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=809608
>
> Which is terrible of course. Surely it is a bug in the Guile GnuTLS
> bindings and not in Guile proper. Compiling Guile with -O2 probably
> holds on to less garbage; could it be that GnuTLS is erroneously not
> making its data structures visible?
From what I can tell, Debian is back to building Guile with -g -O2:
https://buildd.debian.org/status/fetch.php?pkg=guile-2.0&arch=i386&ver=2.0.13%2B1-4&stamp=1481333071&raw=0
Therefore marking this as closed.
Andy
^ permalink raw reply [flat|nested] 6+ messages in thread
* bug#22337: Breakage on amd64 when built with -O1 and higher
2017-02-28 14:45 ` Andy Wingo
@ 2017-02-28 16:37 ` Andreas Metzler
0 siblings, 0 replies; 6+ messages in thread
From: Andreas Metzler @ 2017-02-28 16:37 UTC (permalink / raw)
To: Andy Wingo; +Cc: Ludovic Courtès, 22337
On 2017-02-28 Andy Wingo <wingo@pobox.com> wrote:
> On Sun 07 Aug 2016 13:19, Andy Wingo <wingo@pobox.com> writes:
[...]
> > Apparently this is still an issue. Debian actually reverted to
> > compiling Guile with -O0:
> >
> > https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=809608
> >
> > Which is terrible of course. Surely it is a bug in the Guile GnuTLS
> > bindings and not in Guile proper. Compiling Guile with -O2 probably
> > holds on to less garbage; could it be that GnuTLS is erroneously not
> > making its data structures visible?
> From what I can tell, Debian is back to building Guile with -g -O2:
> https://buildd.debian.org/status/fetch.php?pkg=guile-2.0&arch=i386&ver=2.0.13%2B1-4&stamp=1481333071&raw=0
> Therefore marking this as closed.
Debian stopped shipping GnuTLS guile wrappers, the fact that guile
switched back does not imply that the bug was fixed.
cu Andreas
--
`What a good friend you are to him, Dr. Maturin. His other friends are
so grateful to you.'
`I sew his ears on from time to time, sure'
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2017-02-28 16:37 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-09 13:47 bug#22337: Breakage on amd64 when built with -O1 and higher Andreas Metzler
2016-01-09 14:57 ` Ludovic Courtès
2016-01-09 15:45 ` Andreas Metzler
2016-08-07 11:19 ` Andy Wingo
2017-02-28 14:45 ` Andy Wingo
2017-02-28 16:37 ` Andreas Metzler
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).