On Wednesday 27 September 2006 18:28, Andy Ross wrote:
> Finally, please make sure you remove *all* traces of FlightGear and
> SimGear from you system before doing a
>
> Durk Talsma wrote:
> > Lou Sanchez-Chopitea wrote:
> > > I have assembled a box based on a Tyan MB with two Athlon MP 2000+
> > > with 2GB of ram, running Fedora Core 5. I get segfaults in both
> > > the yum installed FG and a local version built from sources. Has
> > > anyone encountered problems (or success) on dual processor
> > > systems?
> >
> > About two weeks ago, I posted a valgrind error log on the list, which
> > you can find here: http://durktalsma.xs4all.nl/valgrind.log
>
> Note that both the X11 libraries and NVIDIA libGL implementation
> generate a huge stream of (apparently benign) uninitialized memory
> reads. You will need to filter them out if you want to get any use
> out of valgrind. But the general answer to your question is no:
> because of FlightGear's interactive nature and the performance hit
> from running under valgrind, we don't tend to run it on the fgfs
> binary*. So there are almost certainly some good bugs living in there
> for someone with the energy to find them.
>
FWIW, I'm currently investigating a huge memory problem that was exposed by
the new AI code (although I'm still not sure it is causing it). When I'm
running with AI/traffic manager enabled, flightGear leaks about 5 MB a minute
on my system. Without AI it runs stable. This problem first appeared after I
added the ground network distance monitoring AI part, but since I don't
explicitly allocate or deallocate memory, I can hardly see that this new code
is causing it. (I'm just using stl vectors, so memory allocation is done
automatically.
In the mean time, I did investigate a few potential other memory leaks. I've
listed those I found below. One tiny leak is in FlightGear, one is in
SimGear, and one in plib's ac model loader.
Please comment if my assumptions listed below are not correct. Otherwise, I
ll go ahead and fix these shortly.
Cheers,
Durk
FlightGear: src/Main/fg_io.cxx: line 110.
if ( protocol == "atcsim" ) {
FGATCMain *atcsim = new FGATCMain;
atcsim->set_hz( 30 );
if ( tokens.size() != 6 ) {
SG_LOG( SG_IO, SG_ALERT, "Usage: --atcsim=[no-]pedals,"
<< "input0_config,input1_config,"
<< "output0_config,output1_config,file.nas" );
[ Shouldn't there be "delete atcsim;" here before
returning ??? ]
return NULL;
}
SimGear: simgear/scene/model/placement.cxx: line
SGModelPlacement::SGModelPlacement ()
: _lon_deg(0),
_lat_deg(0),
_elev_ft(0),
_roll_deg(0),
_pitch_deg(0),
_heading_deg(0),
_selector(new ssgSelector),
_position(new ssgPlacementTransform),
_location(new SGLocation)
{
}
SGModelPlacement::~SGModelPlacement ()
{
[ Shouldn't there be a "delete _location;" location statement here ??? ]
}
N _selector and _position are ssgSharedPointers, and those are not required to
be deleted, if I'm correct, but location is a regular class member pointer.
plib: src/ssg/ssgLoadAC.cxx: line 943:
I believe that there should be a block of code that deallocates the memory
that is assigned to mlist[num_materials] at line 292.
for (int i = 0; i <= num_materials; i++)
{
delete mlist[i];
}
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Flightgear-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/flightgear-devel