Ticket #1080 (closed bug: fixed)

Opened 12 years ago

Last modified 12 years ago

segfault in Parrot_HashIteratorKey_get_string

Reported by: coke Owned by: whiteknight
Priority: blocker Milestone:
Component: core Version: trunk
Severity: fatal Keywords:
Cc: Language:
Patch status: Platform:


Parrot r41563, partcl revision 745

running t_tcl/dict.test in a partcl checkout (after running enough of 'make spectest' to checkout the spec tests), segfaults with the following backtrace.

#0  0xb7f4620b in Parrot_HashIteratorKey_get_string (interp=0x804f040,
    pmc=0xb6c0fb74) from /home/coke/bird/lib/libparrot.so.1.6.0
#1  0xb7e545fe in convert_arg_from_pmc (interp=0x804f040, st=0xbfffc080)
    at src/call/pcc.c:1124
#2  Parrot_convert_arg (interp=0x804f040, st=0xbfffc080) at src/call/pcc.c:1862
#3  0xb7e54dd7 in Parrot_process_args (interp=0x804f040, st=0xbfffc080,
    param_or_result=PARROT_PASS_PARAMS) at src/call/pcc.c:1725
#4  0xb7e56017 in parrot_pass_args_fromc (interp=0x804f040,
    sig=0xb7fb2d2f "PP", dest=0xb6faf1b0, old_ctxp=0xb6c0d720,
    ap=0xbfffc1a0 "\254\204\303\266H\327\300\266 \327\300\266\1")
    at src/call/pcc.c:1949
#5  0xb7e581b3 in runops_args (interp=0x804f040, sub=0x813050c, obj=0x80c0718,
    meth_unused=0x0, sig=0xb7fb2d2e "IPP",
    ap=0xbfffc19c "t\373\300\266\254\204\303\266H\327\300\266 \327\300\266\1")
    at src/call/ops.c:255
#6  0xb7e586b8 in Parrot_runops_fromc_args_reti (interp=0x804f040,
    sub=0x813050c, sig=0xb7fb2d2e "IPP") at src/call/ops.c:415
#7  0xb7e79c30 in COMPARE (interp=0x804f040, a=0x9a46c88, b=0xb6c384ac,
    cmp=0x1) at src/utils.c:917
#8  0xb7e79d5d in Parrot_quicksort (interp=0x804f040, data=0x97055c0, n=4,
    cmp=0x813050c) at src/utils.c:946
#9  0xb7f43de5 in Parrot_FixedPMCArray_nci_sort (interp=0x804f040,
    pmc=0x80b6500) from /home/coke/bird/lib/libparrot.so.1.6.0
#10 0xb7ef0e81 in Parrot_NCI_invoke (interp=0x804f040, pmc=0x80b6500,
    next=0xb6faf064) from /home/coke/bird/lib/libparrot.so.1.6.0
#11 0xb7e02856 in Parrot_callmethodcc_p_sc (cur_opcode=0xb6faf058,
    interp=0x804f040) at src/ops/object.ops:77
#12 0xb7e7185b in runops_slow_core (interp=0x804f040, runcore=0x80e1e50,
    pc=0xb6faf058) at src/runcore/cores.c:843
#13 0xb7e7074e in runops_int (interp=0x804f040, offset=24465)
    at src/runcore/main.c:545
#14 0xb7e58012 in runops (interp=0x804f040, offs=3) at src/call/ops.c:119
#15 0xb7e5817b in runops_args (interp=0x804f040, sub=0x80b95fc, obj=0x80c0718,
    meth_unused=0x0, sig=0xb7fa6d44 "vP", ap=0xbfffc3fc "\314\230\v\b")
    at src/call/ops.c:269
#16 0xb7e587d8 in Parrot_runops_fromc_args (interp=0x804f040, sub=0x80b95fc,
    sig=0xb7fa6d44 "vP") at src/call/ops.c:338
#17 0xb7e42187 in Parrot_runcode (interp=0x804f040, argc=2, argv=0xbfffc578)
    at src/embed.c:827
#18 0xb7f94046 in imcc_run_pbc (interp=0x804f040,
    sourcefile=0xbfffe440 "tcl.pbc", argc=2, argv=0xbfffc578)
    at compilers/imcc/main.c:792
#19 imcc_run (interp=0x804f040, sourcefile=0xbfffe440 "tcl.pbc", argc=2,
    argv=0xbfffc578) at compilers/imcc/main.c:1075
#20 0x08048985 in main (argc=2, argv=0xbfffc578) at src/main.c:60

Change History

Changed 12 years ago by coke

Segfault is gone; leaving case open for bacek to find original cause (he just removed the symptom.)

Changed 12 years ago by coke

  • component changed from none to core

Changed 12 years ago by whiteknight

  • owner set to whiteknight

Several of the functions in that backtrace no longer exist after the PCC refactor: Parrot_runops_fromc_args, Parrot_runops_fromc_args, parrot_pass_args_fromc, Parrot_process_args, convert_arg_from_pmc, etc.

If this segfault no longer occurs, this ticket should be closed. The underlying archetecture of the PCC system has changed so much that it would be a different issue entirely.

Changed 12 years ago by jkeenan


Are you still getting this problem in partcl?

If not, then can ticket be closed as whiteknight suggests?

Thank you very much.


Changed 12 years ago by coke

This version of partcl isn't being developed atm, in favor of partcl-nqp, so it's unlikely I'll be able to duplicate this segfault. Feel free to close the ticket.

Changed 12 years ago by whiteknight

  • status changed from new to closed
  • resolution set to fixed

Okay, we can open a new ticket if this problem emerges in an actively-developed project or branch.

Note: See TracTickets for help on using tickets.