Bug 126585 - sci-libs/cln-1.1.6 does not work when compiled with -Os
Bug#: 126585 Product:  Gentoo Linux Version: 2006.0 Platform: x86
OS/Version: Linux Status: RESOLVED Severity: normal Priority: P2
Resolution: FIXED Assigned To: sci@gentoo.org Reported By: mike@nauticaltech.com
Component: Library
URL: 
Summary: sci-libs/cln-1.1.6 does not work when compiled with -Os
Keywords:  
Status Whiteboard: 
Opened: 2006-03-17 13:16 0000
Description:   Opened: 2006-03-17 13:16 0000
I emerged qalculate-kde, and I would get a segfault upon application start:

mspiegle@laptop ~ $ qalculate-kde 
Segmentation fault

Here is an strace of the last few lines before the segfault:
set_thread_area({entry_number:-1 -> 6, base_addr:0xb66b68c0, limit:1048575,
seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0,
useable:1}) = 0
munmap(0xb77c0000, 52252)               = 0
set_tid_address(0xb66b6908)             = 8375
rt_sigaction(SIGRTMIN, {0xb6bc5400, [], SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0xb6bc5480, [], SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
_sysctl({{CTL_KERN, KERN_VERSION}, 2, 0xbff1adcc, 39, (nil), 0}) = 0
open("/dev/urandom", O_RDONLY)          = 3
read(3, "%n/\25", 4)                    = 4
close(3)                                = 0
futex(0xb6a3c824, FUTEX_WAKE, 2147483647) = 0
brk(0)                                  = 0x810e000
brk(0x812f000)                          = 0x812f000
gettimeofday({1142630065, 778996}, NULL) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++


I tried recompiling qalculate-kde and libqalcuate with Os and O2 and still had
the problem.  Once I recompiled cln as O2, it began to work.  Just as a test, I
recompiled cln back to Os and it broke again.

laptop ~ # emerge info
Portage 2.0.54 (default-linux/x86/2006.0, gcc-3.4.5, glibc-2.3.5-r2,
2.6.15-gentoo-r1 i686)
=================================================================
System uname: 2.6.15-gentoo-r1 i686 Intel(R) Pentium(R) M processor 2.00GHz
Gentoo Base System version 1.6.14
dev-lang/python:     2.4.2
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=pentium-m -mtune=pentium-m -fomit-frame-pointer -pipe
-ftracer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env
/usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=pentium-m -mtune=pentium-m -fomit-frame-pointer -pipe
-ftracer -fvisibility-inlines-hidden"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig candy distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://ftp.ucsb.edu/pub/mirrors/linux/gentoo/
http://mirror.datapipe.net/gentoo/
http://distro.ibiblio.org/pub/linux/distributions/gentoo/
http://gentoo.mirrors.pair.com/"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X alsa audiofile avi berkdb bitmap-fonts bzip2 cdr cli crypt ctype
cups dba dvd dvdr dvdread eds emboss encode expat fam fastbuild ffmpeg
foomaticdb force-cgi-redirect fortran ftp gd gdbm gif glut gmp gtkhtml idn
imlib jpeg lcms libg++ libwww mad memlimit mikmod mmx mng motif mp3 mpeg
ncurses nls nptl nptlonly nsplugin ogg opengl oss pam pcre pdflib perl png
posix python qt quicktime readline samba sdl session simplexml soap sockets
spell spl sse sse2 ssl tcpd tiff tokenizer truetype truetype-fonts type1-fonts
udev usb vorbis xml xml2 xmms xsl xv xvid zlib userland_GNU kernel_linux
elibc_glibc"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS

------- Comment #1 From Markus Dittrich 2006-03-20 07:36:15 0000 -------
Hi Michael,

Thanks for reporting! -Os is already replaced by -O2 in the cln-1.1.10
ebuild (see bug #112741) and I have backported this to cln-1.1.6
hopefully taking care of this problem.

Thanks,
Markus