Machine info: CPU: AMD 4200+ (64 bit) RAM: 3G DDR OS info: Type: Linux Distro: Ubuntu Edgy 6.10 Kernel: 2.6.17-10-generic #2 SMP Tue Dec 5 22:28:26 UTC 2006 i686 GNU/Linu Bit: 32 bit OS
Overview of the problem: gcc and g++ would frequently and randomly seg faults, and this would sometimes freeze the machine and force the "reset" button to be pressed. Code on which these errors have occurred: mplayer 1.0pre8, Blender. Example of compilation command that produces the error: gcc -c -O3 -g -Wdeclaration-after-statement -Wall -Wno-switch -DHAVE_AV_CONFIG_H -I.. -I/home/jingy/install/blender/cvs_new/blender/extern/ffmpeg/libavutil -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE -DHAVE_AV_CONFIG_H -DMOZ_NOT_NET snow.c -o /home/jingy/install/blender/cvs_new/blender/obj/linux-glibc2.4-i386/extern/ffmpeg/libavcodec/snow.o Output of the compiler: --- snow.c: In function pred_mv: snow.c:1961: warning: suggest parentheses around + or - inside shift snow.c:1962: warning: suggest parentheses around + or - inside shift snow.c:1963: warning: suggest parentheses around + or - inside shift snow.c:1964: warning: suggest parentheses around + or - inside shift snow.c:1965: warning: suggest parentheses around + or - inside shift snow.c:1966: warning: suggest parentheses around + or - inside shift snow.c: In function encode_q_branch: snow.c:1994: warning: initialization discards qualifiers from pointer target type snow.c:1995: warning: initialization discards qualifiers from pointer target type snow.c:1996: warning: initialization discards qualifiers from pointer target type snow.c:1997: warning: initialization discards qualifiers from pointer target type snow.c: In function encode_q_branch2: snow.c:2221: warning: initialization discards qualifiers from pointer target type snow.c:2222: warning: initialization discards qualifiers from pointer target type snow.c: In function decode_q_branch: snow.c:2274: warning: initialization discards qualifiers from pointer target type snow.c:2275: warning: initialization discards qualifiers from pointer target type snow.c: In function pred_block: snow.c:2497: warning: suggest parentheses around && within || snow.c: In function ff_snow_inner_add_yblock: snow.c:2538: warning: left shift count is negative snow.c: In function add_yblock_buffered: snow.c:2567: warning: unused variable y snow.c:2567: warning: unused variable x snow.c:2555: warning: unused variable dst snow.c: In function add_yblock: snow.c:2809: warning: initialization discards qualifiers from pointer target type snow.c:2821: warning: left shift count is negative snow.c: In function predict_slice_buffered: snow.c:2896: warning: passing argument 5 of add_yblock_buffered discards qualifiers from pointer target type snow.c: In function get_block_bits: snow.c:3028: warning: initialization discards qualifiers from pointer target type snow.c:3029: warning: initialization discards qualifiers from pointer target type snow.c: In function get_block_rd: snow.c:3065: warning: unused variable obmc snow.c: In function get_4block_rd: snow.c:3182: warning: passing argument 2 of add_yblock discards qualifiers from pointer target type snow.c:3168: warning: unused variable b_height snow.c: In function common_init: snow.c:3872: warning: assignment from incompatible pointer type snow.c:3872: warning: assignment from incompatible pointer type snow.c:3873: warning: assignment from incompatible pointer type snow.c:3873: warning: assignment from incompatible pointer type snow.c:3874: warning: assignment from incompatible pointer type snow.c:3874: warning: assignment from incompatible pointer type snow.c:3875: warning: assignment from incompatible pointer type snow.c:3875: warning: assignment from incompatible pointer type snow.c: At top level: snow.c:1327: warning: spatial_compose53i defined but not used snow.c:1494: warning: spatial_compose97i defined but not used snow.c: In function get_dc: snow.c:3021: internal compiler error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://gcc.gnu.org/bugs.html> for instructions. For Debian GNU/Linux specific bug reporting instructions, see <URL:file:///usr/share/doc/gcc-4.1/README.Bugs>. The bug is not reproducible, so it is likely a hardware or OS problem. make[3]: *** [/home/jingy/install/blender/cvs_new/blender/obj/linux-glibc2.4-i386/extern/ffmpeg/libavcodec/snow.o] Error 1 make[2]: *** [all] Error 1 make[1]: *** [all] Error 1 make: *** [all] Error 1 --- The output of the preprocessor (snow.i) can be downloaded from: http://www.csse.unimelb.edu.au/~jingy/download/snow.i Sometimes these errors would be immediately followed by a kernel warning stating some memory protection has failed. Sometimes these errors would be so severe that no other processes can be run. Please feel free to contact me for further information. Thanks a lot. Patrick -- Summary: gcc/g++ randomly seg faults, sometimes freezes the entire machine Product: gcc Version: 4.1.2 Status: UNCONFIRMED Severity: blocker Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ye dot patrick at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31502