[DGD] DGD Segmentation Fault After Dump Restore
Neil McBride
neil at dogl.net
Mon Sep 9 00:50:14 CEST 2013
Hello,
I've managed to generate a core dump in DGD a couple of times in the
last week that didn't involve me writing in an infinite loop. I'm
running the most recent DGD 1.5 from github and using my own library
built on top of the kernel library.
I had been working on some new input handling code so was creating
various statedumps along the way. The following backtrace is from a core
file that was created about 30 seconds after restoring from one of these
statedumps. It did not matter whether or not any connections had been
established for the core dump to occur.
In case it's relevant, the only modified flags in my DGD Makefile is the
use of -DSLASHSLASH in DEFINES and -DINET6=0 in CCFLAGS.
Core was generated by `./bin/driver H7/H7.dgd dump'.
Program terminated with signal 11, Segmentation fault.
#0 0x00007f4dc834a217 in o_control (obj=0x7f4dc9adb340) at object.c:966
966 if (!(o->flags & O_MASTER)) {
(gdb) bt
#0 0x00007f4dc834a217 in o_control (obj=0x7f4dc9adb340) at object.c:966
#1 0x00007f4dc83592f9 in d_get_varmap (obj=0x7ffff35180b0, update=0,
nvariables=0x7ffff35180f4) at data.c:1521
#2 0x00007f4dc83597cf in d_upgrade_lwobj (lwobj=0x7f4dc8264d48,
obj=0x7f4dc96dc280) at data.c:1649
#3 0x00007f4dc8350672 in d_count (save=0x7ffff3518200,
v=0x7f4dc829a4f0, n=1)
at sdata.c:1830
#4 0x00007f4dc83503ed in d_arrcount (save=0x7ffff3518200,
arr=0x7f4dc827b0f0)
at sdata.c:1776
#5 0x00007f4dc8350599 in d_count (save=0x7ffff3518200,
v=0x7f4dc82ada88, n=3)
at sdata.c:1813
#6 0x00007f4dc83515a5 in d_save_dataspace (data=0x7f4dc8279378, swap=1
'\001')
at sdata.c:2210
#7 0x00007f4dc835215a in d_swapout (frag=32) at sdata.c:2437
#8 0x00007f4dc837415e in endthread () at dgd.c:89
#9 0x00007f4dc835e870 in comm_receive (f=0x7f4dc85f9b00 <topframe>,
timeout=26, mtime=827) at comm.c:1580
#10 0x00007f4dc837458a in dgd_main (argc=2, argv=0x7ffff351a5b0) at
dgd.c:223
#11 0x00007f4dc83c86dd in main (argc=3, argv=0x7ffff351a5a8) at local.c:46
(gdb) quit
Is this likely to be some sort of bug, or just me finding new and unique
ways to break things?
Neil.
More information about the DGD
mailing list