# New Ticket Created by  "Seneca Cunningham" 
# Please include the string:  [perl #57536]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=57536 >


Using a lightly modified config (RT#57532), I got parrot to build as a
64-bit Intel binary on OS X.  One of a series of segfaults encountered
appears to be triggered in Parrot_memalign in
config/gen/platform/darwin/memalign.c (if gdb is to be believed) while
running test 19 (and possibly also 17, 19 was the first I reproduced)
of the shootout tests.  I do not currently have an extensive stack
trace of this crash; the crash reporter and gdb encountered
difficulties due to the addresses involved.  This is quite possibly
the first time I've seen a crash that the crash reporter couldn't
generate a trace for.

Make test output:
t/examples/shootout..........................NOK 19#   Failed test
'examples/shootout/sumcol.pir'
#   in t/examples/shootout.t at line 108.
# Exited with error code: 139
# Received:
# sh: line 1: 44335 Segmentation fault      ./parrot -C
"/opt/src/perl6/build-20080802-64/t/examples/shootout_19.pir" <
examples/shootout/sumcol.pir_input
#
# Expected:
# 500
#

command line output:
$ file parrot
parrot: Mach-O 64-bit executable x86_64
$ ./parrot -C t/examples/shootout_19.pir < examples/shootout/sumcol.pir_input
Segmentation fault
$

gdb output:
gdb ./parrot
GNU gdb 6.3.50-20050815 (Apple version gdb-768) (Tue Oct  2 04:07:49 UTC 2007)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-apple-darwin"...Reading symbols for
shared libraries ......... done

(gdb) run -C t/examples/shootout_19.pir < examples/shootout/sumcol.pir_input
Starting program: /opt/src/perl6/build-20080802-64/parrot -C
t/examples/shootout_19.pir < examples/shootout/sumcol.pir_input
Reading symbols for shared libraries . done

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_INVALID_ADDRESS at address: 0x00000001000d71a5
0x00000001000d71a5 in Parrot_memalign (align=256, size=216) at memalign.c:179
179                     status = vm_deallocate(mach_task_self(), 
firstUnneededPage,
(gdb) bt
#0  0x00000001000d71a5 in Parrot_memalign (align=256, size=216) at
memalign.c:179
Cannot access memory at address 0x1000d6f90
(gdb)

Crash reporter output:
Process:         parrot [44328]
Path:            ./parrot
Identifier:      parrot
Version:         ??? (???)
Code Type:       X86-64 (Native)
Parent Process:  sh [44327]

Date/Time:       2008-08-02 15:29:35.572 -0400
OS Version:      Mac OS X 10.5.2 (9C2028)
Report Version:  6

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x00000001000d71a5
Crashed Thread:  Unknown

Error Formulating Crash Report:
Called memoryAtAddress: 0x100000000, which is in an unmappable portion
of [0x0 -> 0xffffffffffffffff] in PID# 44328.
0x964b724b
0x962f40fb
0x0007b61e
0x0007527f
0x0007498c
0x000748f7
0x0008985c
0x00089570
0x00085049
0x00002d90
0x000093be
0x0000b57c
0x0000b0c9
0x930b1373
0x0000a7d0
0x93084c55
0x93084b12

Backtrace not available

Unknown thread crashed with X86 Thread State (64-bit):
  rax: 0x0000000000000000  rbx: 0x0000000000000000  rcx:
0x00007fff805f6b96  rdx: 0x0000000000000000
  rdi: 0x00007fff5fbff250  rsi: 0x0000000000000003  rbp:
0x00007fff5fbff320  rsp: 0x00007fff5fbff2a0
   r8: 0x0000000000000e03   r9: 0x0000000000000000  r10:
0x000000000000002c  r11: 0x0000000000000202
  r12: 0x0000000000000000  r13: 0x0000000000000000  r14:
0x0000000000000000  r15: 0x0000000000000000
  rip: 0x00000001000d71a5  rfl: 0x0000000000010202  cr2: 0x00000001000d71a5

Binary images description not available

-- 
Seneca Cunningham
<[EMAIL PROTECTED]>

Reply via email to