Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 54856 - evms_activate segfaults
Summary: evms_activate segfaults
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: x86 All
: High major (vote)
Assignee: Jeremy Huddleston (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-06-22 22:06 UTC by Mike Nerone
Modified: 2004-09-01 01:11 UTC (History)
1 user (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 Mike Nerone 2004-06-22 22:06:57 UTC
Upgraded to evms-2.3.2, now evms_activate segfaults (including at the two places where it's executed by init scripts). For *me* this is not critical, as I use an evms initrd (because my root partition is in evms - note that I am using the developer-supplied "evms-2.3.2-initrd.gz" to match the ebuild's version) that activates correctly with no segfault. It's also possible that evms_activate actually does complete it's job before segfaulting (I have no way to know since my initrd gets there first). If it doesn't, and a user is not using an evms initrd, then their system may be rendered inoperable (unable to mount all evms-supplied partitions). For this reason, I'm marking it as critical even though I'm not positive.

Please note that evms user interfaces seem to work ok.

=================================================================
# emerge info
Portage 2.0.50-r8 (default-x86-2004.0, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.6.7-gentoo-r4)
=================================================================
System uname: 2.6.7-gentoo-r4 i686 Intel(R) Pentium(R) 4 CPU 2.53GHz
Gentoo Base System version 1.4.16
Autoconf: sys-devel/autoconf-2.59-r3
Automake: sys-devel/automake-1.8.3
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O3 -march=pentium4 -pipe -fomit-frame-pointer -fstack-protector"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O3 -march=pentium4 -pipe -fomit-frame-pointer -fstack-protector"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache sandbox"
GENTOO_MIRRORS="http://gentoo.chem.wisc.edu/gentoo/ http://128.213.5.34/gentoo/ http://gentoo.netnitco.net http://mirror.cpsc.ucalgary.ca/mirror/gentoo.org http://cudlug.cudenver.edu/gentoo/ http://gentoo.ccccom.com http://gentoo.binarycompass.org"
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="alsa apache2 arts avi crypt cups encode flash foomaticdb gd gif gtk2 imagemagick imap imlib jpeg lcms libg++ libwww mad mcal memlimit mikmod mmx mpeg mysql ncurses nls oggvorbis opengl oss pam pdflib perl png ppds python quicktime readline samba sasl sdl slang slp spell sse ssl svga tcpd tiff truetype usb x86 xml xml2 xmms zlib"
=================================================================

=================================================================
# evms_activate 
Segmentation fault
=================================================================

=================================================================
# evms_activate -v
Loading module: /lib/evms/2.3.2/xfs-1.0.6.so
Validating plug-in: XFS File System Interface Module
Loading module: /lib/evms/2.3.2/multipath-1.0.0.so
Validating plug-in: Multipath Segment Manager
Loading module: /lib/evms/2.3.2/csm-1.0.6.so
Validating plug-in: Cluster Segment Manager
Loading module: /lib/evms/2.3.2/gpt-1.1.8.so
Validating plug-in: GPT Segment Manager
Loading module: /lib/evms/2.3.2/reiser-1.1.9.so
Validating plug-in: ReiserFS File System Interface Module
Loading module: /lib/evms/2.3.2/drivelink-3.0.3.so
Validating plug-in: Drive Linking Feature
Loading module: /lib/evms/2.3.2/ext2-1.1.9.so
Validating plug-in: Ext2/3 File System Interface Module
Loading module: /lib/evms/2.3.2/lvm-1.1.9.so
Validating plug-in: LVM Region Manager
Loading module: /lib/evms/2.3.2/bbr_seg-1.1.8.so
Validating plug-in: Bad Block Relocation Segment Manager
Loading module: /lib/evms/2.3.2/dos-1.1.10.so
Validating plug-in: DOS Segment Manager
Loading module: /lib/evms/2.3.2/swap-1.1.8.so
Validating plug-in: Swap File System Interface Module
Loading module: /lib/evms/2.3.2/replace-1.0.5.so
Validating plug-in: EVMS Replace
Loading module: /lib/evms/2.3.2/disk-1.2.6.so
Validating plug-in: Local Disk Manager
Loading module: /lib/evms/2.3.2/mac-1.0.5.so
Validating plug-in: MAC Segment Manager
Loading module: /lib/evms/2.3.2/bbr-1.1.11.so
Validating plug-in: Bad Block Relocation Feature
Loading module: /lib/evms/2.3.2/ogfs-1.0.1.so
Validating plug-in: OpenGFS File System Interface Module
Loading module: /lib/evms/2.3.2/bsd-1.0.5.so
Validating plug-in: BSD Segment Manager
Loading module: /lib/evms/2.3.2/jfs-1.1.10.so
Validating plug-in: JFS File System Interface Module
Loading module: /lib/evms/2.3.2/md-1.1.12.so
Validating plug-in: MD Linear Raid Region Manager
Validating plug-in: MD Raid 1 Region Manager
Validating plug-in: MD Raid 0 Region Manager
Validating plug-in: MD RAID 4/5 Region Manager
Validating plug-in: MD Multipath Region Manager
Loading module: /lib/evms/2.3.2/snapshot-3.1.6.so
Validating plug-in: Snapshot Feature
Setup plug-in: EVMS Replace
Setup plug-in: Local Disk Manager
Setup plug-in: Multipath Segment Manager
Setup plug-in: Cluster Segment Manager
Setup plug-in: GPT Segment Manager
Setup plug-in: Bad Block Relocation Segment Manager
Setup plug-in: DOS Segment Manager
Setup plug-in: MAC Segment Manager
Setup plug-in: BSD Segment Manager
Setup plug-in: LVM Region Manager
Setup plug-in: MD Linear Raid Region Manager
Setup plug-in: MD Raid 1 Region Manager
Setup plug-in: MD Raid 0 Region Manager
Setup plug-in: MD RAID 4/5 Region Manager
Setup plug-in: MD Multipath Region Manager
Setup plug-in: Drive Linking Feature
Setup plug-in: Bad Block Relocation Feature
Setup plug-in: Snapshot Feature
Setup plug-in: XFS File System Interface Module
Setup plug-in: ReiserFS File System Interface Module
Setup plug-in: Ext2/3 File System Interface Module
Setup plug-in: Swap File System Interface Module
Setup plug-in: OpenGFS File System Interface Module
Setup plug-in: JFS File System Interface Module
Discovering disks...
Discovering disks   
Discovering segments...
Discovering segments   
Discovering segments.  
Discovering segments.. 
Discovering segments...
Discovering segments   
Discovering segments.  
Discovering segments.. 
Discovering segments...
Discovering segments   
Discovering segments.  
Discovering segments.. 
Discovering segments...
Discovering segments   
Discovering segments.  
Discovering segments.. 
Discovering segments...
Discovering segments   
Discovering segments.  
Discovering segments.. 
Discovering segments...
Discovering regions...
Discovering regions   
Discovering regions.  
Discovering regions.. 
Discovering regions...
Discovering regions   
Discovering regions.  
Discovering regions.. 
Discovering regions...
Discovering regions   
Discovering regions.  
Discovering regions.. 
Discovering regions...
Discovering regions   
Discovering regions.  
Discovering regions.. 
Discovering regions...
Discovering regions   
Cleaning up the /dev/evms tree...
Cleaning up the /dev/evms tree   
Cleaning up the /dev/evms tree.  
Cleaning up the /dev/evms tree.. 
Cleaning up the /dev/evms tree...
Cleaning up the /dev/evms tree   
Cleaning up the /dev/evms tree.  
Finished cleaning up the /dev/evms tree.
Discovery finished.
Processing the Kill Sectors List...
Activating volumes...
Segmentation fault
=================================================================
Comment 1 Jeremy Huddleston (RETIRED) gentoo-dev 2004-06-22 23:11:56 UTC
-O3 -march=pentium4 -pipe -fomit-frame-pointer -fstack-protector

Can youu please try toning down your CFLAGS a bit, and can you please try 2.3.4...

I just used 2.3.4 on a fresh install with absolutely no problems... and judging from the initrd's working and yours not... I bet it is a compiler problem...

so please try 2.3.4 then toning down your CFLAGS one at a time until you get it to work... then let me know what CFLAG breaks it...

I got it working with:

-O2 -fomit-frame-pointer -pipe

Thanks.
Comment 2 Mike Nerone 2004-06-23 10:50:15 UTC
You were right. 2.3.4 still had the same problem, but removing "-fstack-protector" from CFLAGS fixes both 2.3.2 and 2.3.4. For completeness, my *working* CFLAGS were "-O3 -march=pentium4 -pipe -fomit-frame-pointer". I suppose either a CFLAGS exclusion in the ebuild or figuring out what the compiler's breaking is in order.

Incidentally, is there a mechanism for user-specified per-package CFLAGS?
Comment 3 Jeremy Huddleston (RETIRED) gentoo-dev 2004-06-23 11:18:15 UTC
ok, tahnsk for taking the time to figure out which flag broke it for you.  I've committed a revision bumpped 2.3.2 and 2.3.4 which filters out that flag for safety.  If you're interested in per-package CFLAGS settings, file a feature request with the portage developers.

As for figuring out what -fstack-protector broke...  you'll have to talk to the gcc developers for that... I'm not a compiler expert by any means.
Comment 4 Mike Nerone 2004-08-16 22:40:03 UTC
Just noticed...the ebuild should also filter "-fstack-protector-all".
Comment 5 Mike Nerone 2004-08-17 10:48:12 UTC
Jeremy,

I'm reopening this bug because there's new info.

There was some investigation going on for another bug (Bug #50309), in which python had a problem with -fstack-protector, as well. It was determined that the bug is only triggered if -O3 is in CFLAGS. I was reminded of *this* bug, and tested it out: sure enough, evms exhibits the same behavior: if only -O2 is used, then -fstack-protector is fine.

Since any optimization higher than -O2 is not recommended with ProPolice because it can optimize away some of the protection, anyway (I didn't know this before, so I was using -O3), you will probably want to remove the filter. Do you think this should be reassigned to toolchain?
Comment 6 Jeremy Huddleston (RETIRED) gentoo-dev 2004-09-01 01:11:53 UTC
I loosened the filter to just change -O3 to -O2