Opened 2 years ago

Last modified 2 months ago

#7316 new bug

GHC segfaults on ARM

Reported by: laney Owned by: bgamari
Priority: normal Milestone: 7.12.1
Component: Compiler Version: 7.4.2
Keywords: Cc: bgamari, cjwatson@…
Operating System: Unknown/Multiple Architecture: arm
Type of failure: None/Unknown Test Case:
Blocked By: #3658 Blocking: #7623
Related Tickets: Differential Revisions:

Description

Sorry for the lack of detail. I thought I'd file this upstream. We've been seeing this in Ubuntu with 7.4.2. Some cabal packages, like chell, fail to build with a segfault in ghc.

[3 of 4] Compiling Test.Chell.Main  ( lib/Test/Chell/Main.hs, dist-ghc/build/Test/Chell/Main.o )
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Loading package array-0.4.0.0 ... linking ... done.
Loading package deepseq-1.3.0.0 ... linking ... done.
Loading package old-locale-1.0.0.4 ... linking ... done.
Loading package time-1.4 ... linking ... done.
Loading package random-1.0.1.1 ... linking ... done.
Loading package containers-0.4.2.1 ... linking ... done.
Loading package patience-0.1.1 ... linking ... done.
Loading package bytestring-0.9.2.1 ... linking ... done.
Loading package transformers-0.3.0.0 ... linking ... done.
Loading package monads-tf-0.1.0.0 ... linking ... done.
Loading package text-0.11.2.0 ... linking ... done.
Loading package system-filepath-0.4.6 ... linking ... done.
Loading package pretty-1.1.1.0 ... linking ... done.
Loading package template-haskell ... linking ... done.
Loading package options-0.1.1 ... linking ... done.
make: *** [build-ghc-stamp] Error 11

Full build log attached. I'll try to reduce the example and/or reproduce with 7.6 soon. (I can also provide you with SSH access to hardware if you need it).

Attachments (1)

buildlog_ubuntu-quantal-armhf.haskell-chell_0.3-1build1_FAILEDTOBUILD.txt.gz (7.9 KB) - added by laney 2 years ago.
Log of chell building on Ubuntu Quantal (GHC 7.4.2)

Download all attachments as: .zip

Change History (11)

comment:1 Changed 2 years ago by laney

  • Summary changed from GHC segfaults on hardfloat ARM to GHC segfaults on ARM

Changed 2 years ago by laney

Log of chell building on Ubuntu Quantal (GHC 7.4.2)

comment:2 follow-up: Changed 2 years ago by simonmar

  • Cc bgamari added
  • difficulty set to Unknown
  • Milestone set to 7.6.2
  • Priority changed from normal to high

@bgamari smells like a problem with the ARM linker, any chance you could investigate?

comment:3 in reply to: ↑ 2 Changed 2 years ago by bgamari

Replying to simonmar:

@bgamari smells like a problem with the ARM linker, any chance you could investigate?

Of course. I've recently been having a hard time getting GHC to build on my test machine apparently due to inconsistent compiler options being used by by LLVM and GCC. Nevertheless, I'll take a look at this as soon as the compiler issue is sorted out.

comment:4 Changed 2 years ago by dterei

  • Blocking 7623 added

comment:5 Changed 23 months ago by cjwatson

  • Cc cjwatson@… added

I'm far from certain, but it's possible that my patch in http://hackage.haskell.org/trac/ghc/ticket/7823 will help with this.

comment:6 Changed 22 months ago by igloo

  • Blocked By 3658 added

This should be fixed by using dynamic libraries to implement GHCi.

comment:7 Changed 18 months ago by bgamari

  • Owner set to bgamari

comment:8 Changed 12 months ago by bgamari

  • Priority changed from high to normal

At this point it seems like dynamic linking works pretty well with the LLVM backend on ARM. We can keep this bug open as the bug likely still lurks in GHC's linker, but it's not nearly as critical now.

comment:9 Changed 8 months ago by thoughtpolice

  • Milestone changed from 7.6.2 to 7.10.1

Moving to 7.10.1.

comment:10 Changed 2 months ago by thoughtpolice

  • Milestone changed from 7.10.1 to 7.12.1

Moving to 7.12.1 milestone; if you feel this is an error and should be addressed sooner, please move it back to the 7.10.1 milestone.

Note: See TracTickets for help on using tickets.