Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 68095 - (toolchain) kdevelop-3.1.0, -3.1.1 crash if compiled with hardened gcc-3.4.2-r2
Summary: (toolchain) kdevelop-3.1.0, -3.1.1 crash if compiled with hardened gcc-3.4.2-r2
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Hardened (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: The Gentoo Linux Hardened Team
URL:
Whiteboard:
Keywords:
: 103656 (view as bug list)
Depends on:
Blocks:
 
Reported: 2004-10-18 22:10 UTC by Alexandre Rostovtsev (RETIRED)
Modified: 2005-09-02 06:10 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexandre Rostovtsev (RETIRED) gentoo-dev 2004-10-18 22:10:08 UTC
If compiled with hardened gcc-3.4.2-r2, kdevelop-3.1.0 and 3.1.1 crash while starting, after the main window is open but before the splash screen disappears. If compiled with vanilla 3.4.2-r2, everything works properly.

Reproducible: Always
Steps to Reproduce:
1. set gcc-config to hardened gcc-3.4.2-r2
2. emerge kdevelop
3. $ kdevelop

Actual Results:  
[...]
kdevelop (abbrev): =========> sourceFiles:
/usr/share/apps/kdevabbrev/sources/cpp_keywords
/usr/share/apps/kdevabbrev/sources/qt_classes
kdevelop (abbrev): ===> load file: /usr/share/apps/kdevabbrev/sources/cpp_keywords
kdevelop (abbrev): ===> load file: /usr/share/apps/kdevabbrev/sources/qt_classes
kdevelop (abbrev): fn =
/home/xrostov/.kde3.3/share/apps/kdevabbrev/templates/templates
kdevelop (abbrev): creating template for suffixes html and name tab
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name ife
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name whileb
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name pr
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name pu
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name caseb
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name pro
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name forb
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name classd
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name recordd
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name ifb
kdevelop (abbrev): creating template for suffixes
h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name ife
kdevelop (abbrev): creating template for suffixes
h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name pr
kdevelop (abbrev): creating template for suffixes
h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name whileb
kdevelop (abbrev): creating template for suffixes
h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name pu
kdevelop (abbrev): creating template for suffixes
h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name switchb
kdevelop (abbrev): creating template for suffixes
h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name pro
kdevelop (abbrev): creating template for suffixes
h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name forbkdevelop (abbrev):
creating template for suffixes h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M
and name classd
kdevelop (abbrev): creating template for suffixes
h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name structd
kdevelop (abbrev): creating template for suffixes
h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name ifb
kdevelop (abbrev): AbbrevPart::slotActivePartChanged()
KCrash: Application 'kdevelop' crashing...


Expected Results:  
kdevelop starts properly

kdevelop was compiled with USE="+arts -debug +doc +java +python -ruby +xinerama"

Portage 2.0.51_rc9 (default-x86-1.4, gcc-3.4.2, glibc-2.3.4.20041006-r0,
2.6.8-gentoo-r9 i686)
=================================================================
System uname: 2.6.8-gentoo-r9 i686 AMD Athlon(tm) XP 2500+
Gentoo Base System version 1.5.3
distcc 2.17 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.3 [enabled]
Autoconf: sys-devel/autoconf-2.59-r5
Automake: sys-devel/automake-1.8.5-r1
Binutils: sys-devel/binutils-2.14.90.0.8-r1
Headers:  sys-kernel/linux26-headers-2.6.8.1-r1
Libtools: sys-devel/libtool-1.5.2-r5
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-march=athlon-xp -O2 -pipe -frename-registers -fomit-frame-pointer "
CHOST="i686-pc-linux-gnu"
Comment 1 solar (RETIRED) gentoo-dev 2004-10-19 07:11:02 UTC
gcc-3.4.x + QT/KDE* + SSP don't mix so hot. Try gcc-3.3.4
Comment 2 Alexandre Rostovtsev (RETIRED) gentoo-dev 2004-10-19 08:00:17 UTC
The only problems I've had with kde and gcc3.4 ssp are kdevelop-3.1 and arts (the mcop issue). Are there other parts of kde that generally break?
Comment 3 Kevin F. Quinn (RETIRED) gentoo-dev 2004-10-24 04:45:50 UTC
Just to add, I get the same crash in kdevelop 3.1.0 on both my machines (one p3 the other athlon), and I use gcc 3.3.4 (stable).  I'll try filtering -fstack-protector.

kdevelop (python scripting): Init kdevelopc
kdevelop (python scripting): Init pydcopc
kdevelop (python scripting): import kdevelop
kdevelop (python scripting): from init import *
kdevelop (python scripting): New dom document: <!DOCTYPE kpartgui SYSTEM "kpartgui.dtd">
<kpartgui version="1" name="editorpart" >
 <MenuBar>
  <Menu name="tools" >
   <Action name="toolsPython action 1" />
  </Menu>
 </MenuBar>
</kpartgui>
kdevelop (python scripting):
kdevelop (python scripting): New dom document: <!DOCTYPE kpartgui SYSTEM "kpartgui.dtd">
<kpartgui version="1" name="editorpart" >
 <MenuBar>
  <Menu name="tools" >
   <Action name="toolsPython action 1" />
   <Action name="toolsPython action 2" />
  </Menu>
 </MenuBar>
</kpartgui>
kdevelop (python scripting):
kdevelop (python scripting): New dom document: <!DOCTYPE kpartgui SYSTEM "kpartgui.dtd">
<kpartgui version="1" name="editorpart" >
 <MenuBar>
  <Menu name="tools" >
   <Action name="toolsPython action 1" />
   <Action name="toolsPython action 2" />
   <Action name="toolsPython action 3" />
  </Menu>
 </MenuBar>
</kpartgui>
kdevelop (python scripting):
Connecting kdevelop-17024/KDevCore/projectClosed()
PyDCOP connect kdevelop-17024/KDevCore/projectClosed()/f1() has result true
Connecting kdevelop-17024/KDevCore/projectOpened()
PyDCOP connect kdevelop-17024/KDevCore/projectOpened()/f2() has result true
kdevelop (abbrev): =========> sourceFiles: /usr/share/apps/kdevabbrev/sources/cpp_keywords /usr/share/apps/kdevabbrev/sources/qt_classes
kdevelop (abbrev): ===> load file: /usr/share/apps/kdevabbrev/sources/cpp_keywords
kdevelop (abbrev): ===> load file: /usr/share/apps/kdevabbrev/sources/qt_classes
kdevelop (abbrev): fn = /home/kquinn/.kde3.3/share/apps/kdevabbrev/templates/templates
kdevelop (abbrev): creating template for suffixes html and name tab
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name ife
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name whileb
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name pr
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name pu
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name caseb
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name pro
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name forb
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name classd
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name recordd
kdevelop (abbrev): creating template for suffixes p,pp,pas,dpr and name ifb
kdevelop (abbrev): creating template for suffixes h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name ife
kdevelop (abbrev): creating template for suffixes h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name pr
kdevelop (abbrev): creating template for suffixes h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name whileb
kdevelop (abbrev): creating template for suffixes h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name pu
kdevelop (abbrev): creating template for suffixes h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name switchb
kdevelop (abbrev): creating template for suffixes h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name pro
kdevelop (abbrev): creating template for suffixes h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name forb
kdevelop (abbrev): creating template for suffixes h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name classd
kdevelop (abbrev): creating template for suffixes h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name structd
kdevelop (abbrev): creating template for suffixes h,H,hh,hxx,hpp,inl,tlh,c,C,cc,cpp,c++,cxx,m,mm,M and name ifb
kdevelop (abbrev): AbbrevPart::slotActivePartChanged()
KCrash: Application 'kdevelop' crashing...
Comment 4 spiritus 2004-12-02 10:38:14 UTC
I had the same problem with gcc 3.3.3-r6 and gcc 3.3.4-r2 compiled with USE=hardened. Something wrong with the hardened gcc patches, because all is ok with gcc 3.3.3 and 3.3.4 compiled with USE=-hardened. 
There are several another troubles with hardened gcc: unable to build xemacs and dosemu 1.2.0/1.2.2 with it and all is ok with vanilla gcc.
Comment 5 solar (RETIRED) gentoo-dev 2004-12-02 15:39:16 UTC
Re: "Something wrong with the hardened gcc patches."
Comments like this are insulting to our work.

Simply because KDE and a small handful of apps that do not play along does not mean that there is something "wrong with hardened gcc patches". 
If there is then please spend of of that valuable '*develop' time in tracking it down and attaching a patch here. But that time would be better spent probably looking at the problematic app.

dosemu (not pic aware. I've patched this before. ~arch)
xemacs (probably same thing)
Comment 6 spiritus 2004-12-02 22:34:17 UTC
Re: "Comments like this are insulting to our work."
Sorry. I don't underestimate the value of your work. I've simply reported incompatibility issues with the hardened gcc.
Re: "please spend of of that valuable '*develop' time in tracking it down and attaching a patch here"
I would if I could :) Actually I tried to fix the dosemu-1.2.0("hdinfo.c:48: error: can't find a register in class `BREG' while reloading `asm'") with no success because haven't enough experienses currently with gcc to fix the inline asm fragment that looked correct to me.
Comment 7 Kevin F. Quinn (RETIRED) gentoo-dev 2005-05-13 07:57:21 UTC
This is no longer a problem for me, as of kdevelop-3.2.0 (currently marked ~x86).  I've built it with both hardened gcc-3.3.5 and hardened gcc-3.4.3-20050110, the startup crash no longer occurs.
Comment 8 Gregorio Guidi (RETIRED) gentoo-dev 2005-07-15 03:06:54 UTC
Assuming this is fixed in newer versions.  
Comment 9 Kevin F. Quinn (RETIRED) gentoo-dev 2005-09-02 06:10:39 UTC
*** Bug 103656 has been marked as a duplicate of this bug. ***