[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug-gnubg] Seg fault with threaded code, other oddities

From: Jim Segrave
Subject: [Bug-gnubg] Seg fault with threaded code, other oddities
Date: Wed, 21 Feb 2007 01:02:17 +0100
User-agent: mutt-ng/devel-r804 (FreeBSD)

Using source from 20 Feb 22:00 GMT.

If you start gnubg in GUI mode and give it an .sgf file on the command
line, it segfaults when opening the main window. I've run it under gdb
and the attached segv.gdb gives the backtrace and the contents of the
prd structure, which hasn't been initialised when RenderBoard() is
called. Starting gnubg in GUI mode, then loading the same .sgf file
works as expected, as does CLI mode.

I've also been looking at the periodic thread errors which I've been
seeing in both CLI and GUI mode. It looks like it might be a race
condition, as it seems to occur about 1/2 the time. I've attached a gdb
output where it showed this error on the third run (trap.gdb). It
appears that occasionaly td.queueLock is still locked when trying to
close the threads

I've also captured this error using strace to log system calls and
include a gzipped trace of a run which showed this fault, although I
don't know if it adds any real information.

Finally, on the progress indication, under GUI mode, where the
progress bar calculates the percentage completed, that percentage
resets itself along with the absurd count sequence (in other words on
a match with 611 moves, the count progress normally to perhaps 30
moves (4 to 5 percent), then shows as 1 move of 611 and 1%
completion. I occasionaly see displays of 5/6611 moves and similar

On a side note, I've taken Christen's advice and modified neuralnet.c
to not perform the SSE test if there is a processor type defined
(__x86_64). This may not work with other compilers than gcc, but
if the #define is not present, then the old code is run, so only 64
bit machines with a different compiler than gcc will see it.

Jim Segrave           address@hidden

Attachment: segv.gdb
Description: Text document

Attachment: trap.gdb
Description: Text document

Attachment: trap.strace.gz
Description: application/gunzip

reply via email to

[Prev in Thread] Current Thread [Next in Thread]