Modify

Opened 7 years ago

Closed 3 years ago

#8270 closed defect (obsolete)

gcc crashes during kernel's make modules

Reported by: x@… Owned by: developers
Priority: normal Milestone: Barrier Breaker 14.07
Component: toolchain Version: Trunk
Keywords: gcc ice Cc:

Description

On almost all toolchains in trunk (at least gcc-4.3.3-cs, gcc-4.4.1-cs, gcc-4.5.1, and gcc-4.5.1-l), I get a gcc ICE when the "make modules" command is issued to the Linux kernel build system. I am targetting the kirkwood/Sheevaplug platform. It happens when the asm-offsets.s file is being generated, with this command:

arm-openwrt-linux-uclibcgnueabi-gcc -Wp,-MD,arch/arm/kernel/.asm-offsets.s.d -nostdinc -isystem .../staging_dir/toolchain-arm_v5te_gcc-4.4.1+cs_uClibc-0.9.31_eabi/lib/gcc/arm-openwrt-linux-uclibcgnueabi/4.4.1/include -I.../build_dir/linux-kirkwood/linux-2.6.36/arch/arm/include -Iinclude -include include/generated/autoconf.h -DKERNEL -mlittle-endian -Iarch/arm/mach-kirkwood/include -Iarch/arm/plat-orion/include -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -O2 -fno-reorder-blocks -fno-tree-ch -marm -fno-dwarf2-cfi-asm -fno-omit-frame-pointer -mapcs -mno-sched-prolog -mabi=aapcs-linux -mno-thumb-interwork -DLINUX_ARM_ARCH=5 -march=armv5te -msoft-float -Uarm -Wframe-larger-than=1024 -fno-stack-protector -fno-omit-frame-pointer -fno-optimize-sibling-calls -g -femit-struct-debug-baseonly -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(asm_offsets)" -D"KBUILD_MODNAME=KBUILD_STR(asm_offsets)" -fverbose-asm -S -o arch/arm/kernel/asm-offsets.s arch/arm/kernel/asm-offsets.c

I'm going to attach a post that works around the ICE. I don't know if it's the best solution, but at least it works for me. The patch would only potentially suppress some debug information, which we don't care about in the generation of this asm-offsets.s file, anyway.

I'm guessing that it's caused by issuing the -g and -S arguments simultaneously (it doesn't necessarily make sense to issue both, right?). It's probably a bug in gcc itself, but I thought I'd post the issue here first, since I'm seeing it in my OpenWRT build systems.

Attachments (1)

gcc-fix.patch (423 bytes) - added by x@… 7 years ago.

Download all attachments as: .zip

Change History (3)

Changed 7 years ago by x@…

comment:1 Changed 4 years ago by jow

  • Milestone changed from Attitude Adjustment 12.09 to Barrier Breaker 14.07

Milestone Attitude Adjustment 12.09 deleted

comment:2 Changed 3 years ago by nbd

  • Resolution set to obsolete
  • Status changed from new to closed

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.