Opened 13 years ago

Closed 12 years ago

#32298 closed defect (fixed)

chicken @4.7.0 fails when built with llvm compilers

Reported by: uselpa@… Owned by: arto.bendiken@…
Priority: Normal Milestone:
Component: ports Version: 2.0.3
Keywords: Cc: waqar@…, iraikov (Ivan Raikov), jeremyhu (Jeremy Huddleston Sequoia)
Port: chicken

Description (last modified by ryandesign (Ryan Carsten Schmidt))

Hello

chicken 4.7.0 on OS X 10.7.2, Xcode 4.2, fully "self updated" Macports.

After installing chicken (compiling it either with the default compiler or with configure.compiler=llvm-gcc-4.2), running any binary (csi, csc, chicken) yields 100% CPU usage but doesn't appear to do anything.

A sample generated by Activity Monitor follows (command was "csi -help" as per manage):

Sampling process 3220 for 3 seconds with 1 millisecond of run time between samples
Sampling completed, processing symbols...
Analysis of sampling csi (pid 3220) every 1 millisecond
Process:         csi [3220]
Path:            /opt/local/bin/csi
Load Address:    0x106147000
Identifier:      csi
Version:         ??? (???)
Code Type:       X86-64 (Native)
Parent Process:  bash [2187]

Date/Time:       2011-11-27 22:52:44.801 +0100
OS Version:      Mac OS X 10.7.2 (11C74)
Report Version:  7

Call graph:
    2648 Thread_41435   DispatchQueue_1: com.apple.main-thread  (serial)
      1173 longjmp  (in libsystem_c.dylib) + 23  [0x7fff8c6fe91b]
      + 1173 sigprocmask  (in libsystem_kernel.dylib) + 10,0  [0x7fff8b5e2e62,0x7fff8b5e2e58]
      571 setjmp  (in libsystem_c.dylib) + 48  [0x7fff8c6fe8e0]
      + 569 __sigaltstack  (in libsystem_kernel.dylib) + 10  [0x7fff8b5e1fe6]
      + 2 sigaltstack  (in libsystem_c.dylib) + 1,4  [0x7fff8c6fe9b5,0x7fff8c6fe9b8]
      483 setjmp  (in libsystem_c.dylib) + 21  [0x7fff8c6fe8c5]
      + 483 sigprocmask  (in libsystem_kernel.dylib) + 10,17  [0x7fff8b5e2e62,0x7fff8b5e2e69]
      112 C_reclaim  (in libchicken.dylib) + 805,843,...  [0x106410ed0,0x106410ef6,...]
      106 longjmp  (in libsystem_c.dylib) + 36  [0x7fff8c6fe928]
      + 106 __sigreturn  (in libsystem_kernel.dylib) + 10  [0x7fff8b5e1ffa]
      64 start  (in csi) + 52  [0x106148100]
      + 64 CHICKEN_main  (in libchicken.dylib) + 59  [0x1064126a6]
      +   60 CHICKEN_run  (in libchicken.dylib) + 215  [0x10641261b]
      +   ! 60 tr2  (in libchicken.dylib) + 40  [0x10618e531]
      +   !   60 f_9710  (in libchicken.dylib) + 68  [0x106190cb1]
      +   !     60 C_save_and_reclaim  (in libchicken.dylib) + 218  [0x1064118a3]
      +   !       57 C_reclaim  (in libchicken.dylib) + 2876  [0x1064116e7]
      +   !       : 57 _longjmp  (in libsystem_c.dylib) + 2,4,...  [0x7fff8c6fe96a,0x7fff8c6fe96c,...]
      +   !       3 C_reclaim  (in libchicken.dylib) + 123  [0x106410c26]
      +   !         3 _setjmp  (in libsystem_c.dylib) + 43,19,...  [0x7fff8c6fe95f,0x7fff8c6fe947,...]
      +   4 _longjmp  (in libsystem_c.dylib) + 44,40,...  [0x7fff8c6fe994,0x7fff8c6fe990,...]
      60 setjmp  (in libsystem_c.dylib) + 33,22,...  [0x7fff8c6fe8d1,0x7fff8c6fe8c6,...]
      20 longjmp  (in libsystem_c.dylib) + 41,40,...  [0x7fff8c6fe92d,0x7fff8c6fe92c,...]
      18 really_mark  (in libchicken.dylib) + 2,46,...  [0x106410926,0x106410952,...]
      17 C_save_and_reclaim  (in libchicken.dylib) + 171,206,...  [0x106411874,0x106411897,...]
      9 CHICKEN_run  (in libchicken.dylib) + 141,135  [0x1064125d1,0x1064125cb]
      4 tr2  (in libchicken.dylib) + 7,20  [0x10618e510,0x10618e51d]
      4 update_locative_table  (in libchicken.dylib) + 1,9,...  [0x10640e9b4,0x10640e9bc,...]
      3 DYLD-STUB$$sigprocmask  (in libsystem_c.dylib) + 0  [0x7fff8c745772]
      3 f_9710  (in libchicken.dylib) + 39,17,...  [0x106190c94,0x106190c7e,...]
      1 DYLD-STUB$$setjmp  (in libchicken.dylib) + 0  [0x106412a50]

Total number in stack (recursive counted multiple, when >=5):

Sort by top of stack, same collapsed (when >= 5):
        sigprocmask  (in libsystem_kernel.dylib)        1656
        __sigaltstack  (in libsystem_kernel.dylib)        569
        C_reclaim  (in libchicken.dylib)        112
        __sigreturn  (in libsystem_kernel.dylib)        106
        _longjmp  (in libsystem_c.dylib)        61
        setjmp  (in libsystem_c.dylib)        60
        longjmp  (in libsystem_c.dylib)        20
        really_mark  (in libchicken.dylib)        18
        C_save_and_reclaim  (in libchicken.dylib)        17
        CHICKEN_run  (in libchicken.dylib)        9

Binary Images:
       0x106147000 -        0x106173fff +csi (??? - ???) <4F951DA9-6F58-31BD-8C6C-CE75F1597D79> /opt/local/bin/csi
       0x10617f000 -        0x1064e2ff7 +libchicken.dylib (??? - ???) <7BB8F5FC-0881-35CB-AB8A-2AFECF728F4F> /opt/local/lib/libchicken.dylib
    0x7fff65d47000 -     0x7fff65d7bac7  dyld (195.5 - ???) <4A6E2B28-C7A2-3528-ADB7-4076B9836041> /usr/lib/dyld
    0x7fff85346000 -     0x7fff8534afff  libmathCommon.A.dylib (2026.0.0 - compatibility 1.0.0) <FF83AFF7-42B2-306E-90AF-D539C51A4542> /usr/lib/system/libmathCommon.A.dylib
    0x7fff859a7000 -     0x7fff859a7fff  libkeymgr.dylib (23.0.0 - compatibility 1.0.0) <61EFED6A-A407-301E-B454-CD18314F0075> /usr/lib/system/libkeymgr.dylib
    0x7fff859a8000 -     0x7fff859aafff  libquarantine.dylib (36.0.0 - compatibility 1.0.0) <A6B3CF07-A0D0-3C56-9BEC-33CBDD63CB89> /usr/lib/system/libquarantine.dylib
    0x7fff87310000 -     0x7fff87311ff7  libremovefile.dylib (21.0.0 - compatibility 1.0.0) <AACAD200-A346-3653-89E2-D9D10FE4DC06> /usr/lib/system/libremovefile.dylib
    0x7fff8831f000 -     0x7fff88320ff7  libsystem_blocks.dylib (53.0.0 - compatibility 1.0.0) <8BCA214A-8992-34B2-A8B9-B74DEACA1869> /usr/lib/system/libsystem_blocks.dylib
    0x7fff8a98e000 -     0x7fff8a98ffff  libsystem_sandbox.dylib (??? - ???) <8D14139B-B671-35F4-9E5A-023B4C523C38> /usr/lib/system/libsystem_sandbox.dylib
    0x7fff8aa8f000 -     0x7fff8aabcfe7  libSystem.B.dylib (159.1.0 - compatibility 1.0.0) <095FDD3C-3961-3865-A59B-A5B0A4B8B923> /usr/lib/libSystem.B.dylib
    0x7fff8ab42000 -     0x7fff8ab47fff  libcache.dylib (47.0.0 - compatibility 1.0.0) <3D114C8A-AD1F-3C78-9E8C-B8F3810740E5> /usr/lib/system/libcache.dylib
    0x7fff8b43e000 -     0x7fff8b445fff  libcopyfile.dylib (85.1.0 - compatibility 1.0.0) <65602684-33B1-32DE-802B-050CE07659AC> /usr/lib/system/libcopyfile.dylib
    0x7fff8b5cb000 -     0x7fff8b5ebfff  libsystem_kernel.dylib (1699.23.2 - compatibility 1.0.0) <55377210-60A0-3F33-9D45-B2D19AA91859> /usr/lib/system/libsystem_kernel.dylib
    0x7fff8b620000 -     0x7fff8b65bff7  libsystem_info.dylib (??? - ???) <9C8C2DCB-96DB-3471-9DCE-ADCC26BE2DD4> /usr/lib/system/libsystem_info.dylib
    0x7fff8b9fd000 -     0x7fff8ba1aff7  libxpc.dylib (77.17.0 - compatibility 1.0.0) <72A16104-2F23-3C22-B474-1953F06F9376> /usr/lib/system/libxpc.dylib
    0x7fff8bd47000 -     0x7fff8bd51ff7  liblaunch.dylib (392.18.0 - compatibility 1.0.0) <EB5C4B29-D3B7-38AC-A646-3D445C767F03> /usr/lib/system/liblaunch.dylib
    0x7fff8bd52000 -     0x7fff8bd58fff  libmacho.dylib (800.0.0 - compatibility 1.0.0) <548BAEB6-8C4C-3B0F-AB0C-7E1C960BCAB5> /usr/lib/system/libmacho.dylib
    0x7fff8bd8f000 -     0x7fff8bd9dfff  libdispatch.dylib (187.7.0 - compatibility 1.0.0) <712AAEAC-AD90-37F7-B71F-293FF8AE8723> /usr/lib/system/libdispatch.dylib
    0x7fff8bdf3000 -     0x7fff8be35ff7  libcommonCrypto.dylib (55010.0.0 - compatibility 1.0.0) <A5B9778E-11C3-3F61-B740-1F2114E967FB> /usr/lib/system/libcommonCrypto.dylib
    0x7fff8c65d000 -     0x7fff8c662fff  libcompiler_rt.dylib (6.0.0 - compatibility 1.0.0) <98ECD5F6-E85C-32A5-98CD-8911230CB66A> /usr/lib/system/libcompiler_rt.dylib
    0x7fff8c69e000 -     0x7fff8c77bfef  libsystem_c.dylib (763.12.0 - compatibility 1.0.0) <FF69F06E-0904-3C08-A5EF-536FAFFFDC22> /usr/lib/system/libsystem_c.dylib
    0x7fff8ec2c000 -     0x7fff8ec30fff  libdyld.dylib (195.5.0 - compatibility 1.0.0) <F1903B7A-D3FF-3390-909A-B24E09BAD1A5> /usr/lib/system/libdyld.dylib
    0x7fff8f351000 -     0x7fff8f352fff  libdnsinfo.dylib (395.7.0 - compatibility 1.0.0) <37FEFE78-BCB5-37EC-8E99-747469BCA4C7> /usr/lib/system/libdnsinfo.dylib
    0x7fff8fb8c000 -     0x7fff8fb92ff7  libunwind.dylib (30.0.0 - compatibility 1.0.0) <1E9C6C8C-CBE8-3F4B-A5B5-E03E3AB53231> /usr/lib/system/libunwind.dylib
    0x7fff903d3000 -     0x7fff903d8ff7  libsystem_network.dylib (??? - ???) <5DE7024E-1D2D-34A2-80F4-08326331A75B> /usr/lib/system/libsystem_network.dylib
    0x7fff903d9000 -     0x7fff903e2ff7  libsystem_notify.dylib (80.1.0 - compatibility 1.0.0) <A4D651E3-D1C6-3934-AD49-7A104FD14596> /usr/lib/system/libsystem_notify.dylib
    0x7fff90471000 -     0x7fff90472fff  libunc.dylib (24.0.0 - compatibility 1.0.0) <0482C762-746D-37EB-A8C9-E1048CF70462> /usr/lib/system/libunc.dylib
    0x7fff907ff000 -     0x7fff90807fff  libsystem_dnssd.dylib (??? - ???) <1FA8F861-9D0D-33D2-939F-5BD382718B97> /usr/lib/system/libsystem_dnssd.dylib
Sample analysis of process 3220 written to file /dev/stdout

Change History (13)

comment:1 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: waqar@… ivan.g.raikov@… added
Description: modified (diff)
Owner: changed from macports-tickets@… to arto.bendiken@…

Please use WikiFormatting and preview before submitting. Remember to Cc the port's maintainers.

comment:2 Changed 13 years ago by larryv (Lawrence Velázquez)

I see the same hanging behavior. Unsurprisingly, configure.compiler=apple-gcc-4.2 fixes it, at least superficially.

comment:3 Changed 13 years ago by larryv (Lawrence Velázquez)

Cc: larry.velazquez@… added

Cc Me!

comment:4 Changed 13 years ago by jmroot (Joshua Root)

Summary: chicken scheme 4.7.0 not operationalchicken @4.7.0 hangs when built with llvm compilers

Fallback to [apple-]gcc-4.2 added, r92355.

comment:5 Changed 12 years ago by larryv (Lawrence Velázquez)

Cc: larryv@… added; larry.velazquez@… removed

comment:6 Changed 12 years ago by larryv (Lawrence Velázquez)

Cc: larryv@… removed

Cc Me!

comment:7 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Has this been reported to llvm.org or Apple? Please provide a link to the llvm.org bugzilla or a radar number, thanks.

comment:8 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)

I hate longjmp, btw...

comment:9 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)

I just tried it with clang, and instead of spinning, it just aborts:

$ csi
[panic] out of memory - heap full while resizing - execution terminated

The code is gross, so I'm going to chalk it up to a project bug unless someone can prove to me otherwise.

comment:10 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Summary: chicken @4.7.0 hangs when built with llvm compilerschicken @4.7.0 fails when built with llvm compilers

comment:11 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Cc: jeremyhu@… added

Cc Me!

comment:12 Changed 12 years ago by larryv (Lawrence Velázquez)

For what it’s worth, CHICKEN 4.8.0.1 is currently available (#37859).

Last edited 12 years ago by larryv (Lawrence Velázquez) (previous) (diff)

comment:13 Changed 12 years ago by larryv (Lawrence Velázquez)

Resolution: fixed
Status: newclosed

Not an issue with the latest CHICKEN. Fixed in r103366.

Note: See TracTickets for help on using tickets.