[prev in list] [next in list] [prev in thread] [next in thread] 

List:       flightgear-devel
Subject:    Re: [Flightgear-devel] Progress report on the infamous "error in
From:       Durk Talsma <d.talsma () xs4all ! nl>
Date:       2009-05-26 20:37:45
Message-ID: 200905262237.46359.d.talsma () xs4all ! nl
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


Hi Tim,

On Wednesday 20 May 2009 10:06:18 Tim Moore wrote:
> > It may be helpful to dump the scene graph to a file (from the debug menu)
> > once you're getting the NaN error. Hopefully the offending matrix will
> > be printed with NaNs instead of valid coordinates.
> >
> > Tim
>
> I've added an --enable-fpe argument which, on Linux, will cause an abort or
> core dump on a division-by-zero or other invalid floating point operation,
> including generating NaNs and overflowing float-to-integer conversions. See
> if you can get to the source of the NaNs using that.
>

No breakthroughs yet, but just a quick progress report to keep the thread 
alive. :-)

Thanks for your suggestions. I've been trying to track this down, but don't 
have anything firm yet. My current working hypothesis is that a stack 
corruption may be feeding bad data into the "prepare ground cache" function. 
As I've been tracing the problem further up the stack, I got to the point that 
suggests this. I'll post some more specific results later, because the core 
dumps are on a different machine that I don't have access to. That being the 
case, there's probably no bad date in the scene graph itself. I currently 
don't fully understand the results form the stacktrace yet.

As for the --enable-fpe argument, this is probably going to be a very useful 
debugging tool, but enabling it resulted in a segfault inside the GUI when I 
wanted to click the menu to enable the autopilot...

Cheers,
Durk

[Attachment #5 (text/html)]

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" \
"http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" \
content="1" /><style type="text/css"> p, li { white-space: pre-wrap; }
</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; \
font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; \
margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; \
-qt-user-state:0;">Hi Tim,</p> <p style="-qt-paragraph-type:empty; margin-top:0px; \
margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; \
text-indent:0px; -qt-user-state:0;"></p> <p style=" margin-top:0px; \
margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; \
text-indent:0px; -qt-user-state:0;">On Wednesday 20 May 2009 10:06:18 Tim Moore \
wrote:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; \
margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">&gt; &gt; \
It may be helpful to dump the scene graph to a file (from the debug menu)</p> <p \
style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; \
-qt-block-indent:0; text-indent:0px; -qt-user-state:0;">&gt; &gt; once you're getting \
the NaN error. Hopefully the offending matrix will</p> <p style=" margin-top:0px; \
margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; \
text-indent:0px; -qt-user-state:0;">&gt; &gt; be printed with NaNs instead of valid \
coordinates.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; \
margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">&gt; \
&gt;</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; \
margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">&gt; &gt; \
Tim</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; \
margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">&gt;</p> <p \
style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; \
-qt-block-indent:0; text-indent:0px; -qt-user-state:0;">&gt; I've added an \
--enable-fpe argument which, on Linux, will cause an abort or</p> <p style=" \
margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; \
-qt-block-indent:0; text-indent:0px; -qt-user-state:0;">&gt; core dump on a \
division-by-zero or other invalid floating point operation,</p> <p style=" \
margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; \
-qt-block-indent:0; text-indent:0px; -qt-user-state:0;">&gt; including generating \
NaNs and overflowing float-to-integer conversions. See</p> <p style=" margin-top:0px; \
margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; \
text-indent:0px; -qt-user-state:0;">&gt; if you can get to the source of the NaNs \
using that.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; \
margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">&gt;</p> <p \
style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; \
margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"></p> <p \
style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; \
-qt-block-indent:0; text-indent:0px; -qt-user-state:0;">No breakthroughs yet, but \
just a quick progress report to keep the thread alive. :-)</p> <p \
style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; \
margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"></p> <p \
style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; \
-qt-block-indent:0; text-indent:0px; -qt-user-state:0;">Thanks for your suggestions. \
I've been trying to track this down, but don't have anything firm yet. My current \
working hypothesis is that a stack corruption may be feeding bad data into the \
"prepare ground cache" function. As I've been tracing the problem further up the \
stack, I got to the point that suggests this. I'll post some more specific results \
later, because the core dumps are on a different machine that I don't have access to. \
That being the case, there's probably no bad date in the scene graph itself. I \
currently don't fully understand the results form the stacktrace yet.</p> <p \
style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; \
margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"></p> <p \
style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; \
-qt-block-indent:0; text-indent:0px; -qt-user-state:0;">As for the --enable-fpe \
argument, this is probably going to be a very useful debugging tool, but enabling it \
resulted in a segfault inside the GUI when I wanted to click the menu to enable the \
autopilot...</p> <p style="-qt-paragraph-type:empty; margin-top:0px; \
margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; \
text-indent:0px; -qt-user-state:0;"></p> <p style=" margin-top:0px; \
margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; \
text-indent:0px; -qt-user-state:0;">Cheers,</p> <p style=" margin-top:0px; \
margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; \
text-indent:0px; -qt-user-state:0;">Durk</p></body></html>



------------------------------------------------------------------------------
Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT 
is a gathering of tech-side developers & brand creativity professionals. Meet
the minds behind Google Creative Lab, Visual Complexity, Processing, & 
iPhoneDevCamp as they present alongside digital heavyweights like Barbarian 
Group, R/GA, & Big Spaceship. http://p.sf.net/sfu/creativitycat-com 

_______________________________________________
Flightgear-devel mailing list
Flightgear-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/flightgear-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic