Ticket #960 (new bug) — at Initial Version

Opened 12 years ago

Last modified 12 years ago

segfaults in Parrot_String_mark

Reported by: coke Owned by:
Priority: critical Milestone:
Component: GC Version: trunk
Severity: fatal Keywords:
Cc: Language:
Patch status: Platform:

Description

With parrot: r40853, and partcl r648, I'm seeing a lot of segfaults with a backtrace resembling this one:

#0 0xb7ec981c in Parrot_String_mark (interp=0x804f040, pmc=0xb6b0f040)

at ./src/pmc/string.pmc:77

#1 0xb7dcca7a in mark_special (interp=0x804f040, obj=0xb6b0f040)

at src/gc/mark_sweep.c:472

#2 0xb7dcbaa7 in Parrot_gc_mark_PObj_alive (interp=0x804f040, obj=0x804f148)

at src/gc/api.c:230

#3 0xb7dcd94a in trace_system_areas (interp=0x804f040) at src/gc/system.c:457 #4 0xb7dcd648 in Parrot_gc_trace_root (interp=0x804f040, trace=GC_TRACE_FULL)

at src/gc/mark_sweep.c:244

#5 0xb7dcc6c4 in gc_ms_mark_and_sweep (interp=0x804f040,

flags=<value optimized out>) at src/gc/gc_ms.c:255

#6 0xb7dcb3fa in Parrot_gc_mark_and_sweep (interp=0x804f040, flags=1)

at src/gc/api.c:792

#7 0xb7dcc358 in gc_ms_more_traceable_objects (interp=0x804f040,

pool=0x806f300) at src/gc/gc_ms.c:344

#8 0xb7dcc51d in gc_ms_get_free_object (interp=0x804f040, pool=0x806f300)

at src/gc/gc_ms.c:409

#9 0xb7dcb83b in Parrot_gc_new_pmc_header (interp=0x804f040, flags=0)

at src/gc/api.c:329

#10 0xb7debce7 in get_new_pmc_header (interp=0x804f040, base_type=82,

flags=134541640) at src/pmc.c:472

#11 0xb7dec000 in pmc_new (interp=0x804f040, base_type=68420096)

at src/pmc.c:169

#12 0xb7f182fe in Parrot_PMCProxy_instantiate (interp=0x804f040,

pmc=0x8264710, init=0x4140200) at ./src/pmc/pmcproxy.pmc:199

#13 0xb7d9657e in Parrot_new_p_sc (cur_opcode=0xb6c5deb8, interp=0x804f040)

at src/ops/pmc.ops:57

#14 0xb7dedd52 in runops_slow_core (interp=0x804f040, pc=0xb6c5deb8)

at src/runcore/cores.c:462

#15 0xb7decfef in runops_int (interp=0x804f040, offset=7014)

at src/runcore/main.c:987

#16 0xb7dd53c2 in runops (interp=0x804f040, offs=7014) at src/call/ops.c:119 #17 0xb7dd1515 in Parrot_pcc_invoke_from_sig_object (interp=0x804f040,

sub_obj=0x81ae1a0, sig_obj=0xb6b08218) at src/call/pcc.c:3025

#18 0xb7ee2f90 in Parrot_Class_instantiate (interp=0x804f040, pmc=0x8157ce8,

init=0x80b0bd0) at ./src/pmc/class.pmc:350

#19 0xb7d94dbe in Parrot_new_p_pc (cur_opcode=0xb6c5e818, interp=0x804f040)

at src/ops/pmc.ops:93

#20 0xb7dedd52 in runops_slow_core (interp=0x804f040, pc=0xb6c5e818)

at src/runcore/cores.c:462

#21 0xb7decfef in runops_int (interp=0x804f040, offset=4220)

at src/runcore/main.c:987

#22 0xb7dd53c2 in runops (interp=0x804f040, offs=4220) at src/call/ops.c:119 #23 0xb7dd1515 in Parrot_pcc_invoke_from_sig_object (interp=0x804f040,

sub_obj=0x8105570, sig_obj=0xb6b08380) at src/call/pcc.c:3025

#24 0xb7ee2f90 in Parrot_Class_instantiate (interp=0x804f040, pmc=0x8155c90,

init=0x80b0bd0) at ./src/pmc/class.pmc:350

#25 0xb7d94dbe in Parrot_new_p_pc (cur_opcode=0xb6f6f220, interp=0x804f040)

at src/ops/pmc.ops:93

#26 0xb7dedd52 in runops_slow_core (interp=0x804f040, pc=0xb6f6f220)

at src/runcore/cores.c:462

#27 0xb7decfef in runops_int (interp=0x804f040, offset=7406)

at src/runcore/main.c:987

#28 0xb7dd53c2 in runops (interp=0x804f040, offs=3) at src/call/ops.c:119 #29 0xb7dd5549 in runops_args (interp=0x804f040, sub=0x80c29b8, obj=0x80b0bd0,

meth_unused=0x0, sig=0xb7f51f75 "vP", ap=0xbfecb09c "\030-\f\b") at src/call/ops.c:269

#30 0xb7dd5cf8 in Parrot_runops_fromc_args (interp=0x804f040, sub=0x80c29b8,

sig=0xb7f51f75 "vP") at src/call/ops.c:338

#31 0xb7dbf288 in Parrot_runcode (interp=0x804f040, argc=2, argv=0xbfecb208)

at src/embed.c:983

#32 0xb7f3ee4f in imcc_run (interp=0x804f040, sourcefile=0xbfecc46f "tcl.pbc",

argc=2, argv=0xbfecb208) at compilers/imcc/main.c:801

#33 0x08048955 in main (argc=2, argv=0xbfecb208) at src/main.c:60 }}}

This particular backtrace comes from "parrot tcl.pbc t_tcl/basic.test", and occurs for me on feather with an optimized parrot after running test 'basic-46.5'.

Note: See TracTickets for help on using tickets.