Re: Mesa 7.11.2 Segmentation fault

tom fogal <[email protected]>
Newsgroups gmane.comp.video.mesa3d.user
Message-ID <[email protected]>
I think the linking issue is mischaracterized; it's not a Mesa issue but 
a VTK issue.  Any recent VTK will have trouble linking both libGL and 
libOSMesa.

I didn't necessarily mean the valgrind output is interesting for *me*... 
I think you should save the full log in a text file (e.g. 
'--log-file=mesa.vglog.txt') and attach that to the bug report you open. 
  It would be good if you could run with --track-origins=yes as well.

Good luck!

-tom

On 01/18/2012 08:16 AM, Eduard Deines wrote:
> Hi Tom,
>
> thank you for your response. I'll try the git's master version. \
> I've compiled mesa 7.11 without asm support. I see only a black
> window/image. I also ran it with valgrind. Here is a part of the
> output. I didn't put in the complete output since it is to long and
> there are a bunch of similar errors. I've read on ParaView forum that
> "Using Mesa>  7.7.1 requires you to only link libGL.so OR
> libOSMesa.so, you cannot link both with newer mesa. Also if using
> libOSMesa you need to turn VTK_USE_X OFF". Do you know about this
> issue and if this is still true for 7.11?
>
> ==16754== Memcheck, a memory error detector
> ==16754== Copyright (C) 2002-2009, and GNU GPL'd, by Julian Seward et al.
> ==16754== Using Valgrind-3.5.0 and LibVEX; rerun with -h for copyright info
> Mesa warning: couldn't open libtxc_dxtn.so, software DXTn
> compression/decompression unavailable
> ==16754== Conditional jump or move depends on uninitialised value(s)
> ==16754==    at 0x4F2FAE9: vtkOpenGLProperty::Render(vtkActor*,
> vtkRenderer*) (vtkOpenGLProperty.cxx:89)
> ==16754==    by 0x4D69576:
> vtkActor::RenderOpaqueGeometry(vtkViewport*) (vtkActor.cxx:167)
> ==16754==    by 0x4E47B16: vtkRenderer::UpdateGeometry() (vtkRenderer.cxx:571)
> ==16754==    by 0x4F34770: vtkOpenGLRenderer::DeviceRender()
> (vtkOpenGLRenderer.cxx:266)
> ==16754==    by 0x4E46EB9: vtkRenderer::Render() (vtkRenderer.cxx:300)
> ==16754==    by 0x4E52C45: vtkRendererCollection::Render()
> (vtkRendererCollection.cxx:51)
> ==16754==    by 0x4E3849B: vtkRenderWindow::DoStereoRender()
> (vtkRenderWindow.cxx:676)
> ==16754==    by 0x4E383AA: vtkRenderWindow::DoFDRender()
> (vtkRenderWindow.cxx:645)
> ==16754==    by 0x4E37E4A: vtkRenderWindow::DoAARender()
> (vtkRenderWindow.cxx:537)
> ==16754==    by 0x4E37413: vtkRenderWindow::Render() (vtkRenderWindow.cxx:362)
> ==16754==    by 0x4F7220A: vtkXOpenGLRenderWindow::Render()
> (vtkXOpenGLRenderWindow.cxx:1878)
> ==16754==    by 0x403E99: main (mesa_test.cxx:228)
> ==16754==
> ==16754== Conditional jump or move depends on uninitialised value(s)
> ==16754==    at 0x4F3A80B:
> vtkOpenGLScalarsToColorsPainter::GetPremultiplyColorsWithAlpha(vtkActor*)
> (vtkOpenGLScalarsToColorsPainter.cxx:79)
> ==16754==    by 0x4E5F71B:
> vtkScalarsToColorsPainter::PrepareForRendering(vtkRenderer*,
> vtkActor*) (vtkScalarsToColorsPainter.cxx:166)
> ==16754==    by 0x4DFCEB5: vtkPainter::Render(vtkRenderer*, vtkActor*,
> unsigned long) (vtkPainter.cxx:204)
> ==16754==    by 0x4E1A6C2: vtkPolyDataPainter::Render(vtkRenderer*,
> vtkActor*, unsigned long) (vtkPolyDataPainter.cxx:62)
> ==16754==    by 0x4DFCF44: vtkPainter::RenderInternal(vtkRenderer*,
> vtkActor*, unsigned long) (vtkPainter.cxx:216)
> ==16754==    by 0x4DFCEDB: vtkPainter::Render(vtkRenderer*, vtkActor*,
> unsigned long) (vtkPainter.cxx:205)
> ==16754==    by 0x4E1A6C2: vtkPolyDataPainter::Render(vtkRenderer*,
> vtkActor*, unsigned long) (vtkPolyDataPainter.cxx:62)
> ==16754==    by 0x4D92978: vtkDefaultPainter::Render(vtkRenderer*,
> vtkActor*, unsigned long) (vtkDefaultPainter.cxx:179)
> ==16754==    by 0x4DFE7CC:
> vtkPainterPolyDataMapper::RenderPiece(vtkRenderer*, vtkActor*)
> (vtkPainterPolyDataMapper.cxx:273)
> ==16754==    by 0x4E16F2F: vtkPolyDataMapper::Render(vtkRenderer*,
> vtkActor*) (vtkPolyDataMapper.cxx:74)
> ==16754==    by 0x4EFACE1: vtkOpenGLActor::Render(vtkRenderer*,
> vtkMapper*) (vtkOpenGLActor.cxx:102)
> ==16754==    by 0x4D69623:
> vtkActor::RenderOpaqueGeometry(vtkViewport*) (vtkActor.cxx:180)
> ==16754==
> ==16754== Conditional jump or move depends on uninitialised value(s)
> ==16754==    at 0x7AC3055: vtk_png_write_find_filter (pngwutil.c:2030)
> ==16754==    by 0x7AA7F0E: vtk_png_write_row (pngwrite.c:881)
> ==16754==    by 0x7AA7B63: vtk_png_write_image (pngwrite.c:714)
> ==16754==    by 0x5FF3D14: vtkPNGWriter::WriteSlice(vtkImageData*)
> (vtkPNGWriter.cxx:284)
> ==16754==    by 0x5FF30E3: vtkPNGWriter::Write() (vtkPNGWriter.cxx:106)
> ==16754==    by 0x4040E3: main (mesa_test.cxx:258)
> ==16754==
> ==16754== Use of uninitialised value of size 8
> ==16754==    at 0x8394B1F: deflate_slow (deflate.c:1261)
> ==16754==    by 0x8393109: vtk_zlib_deflate (deflate.c:516)
> ==16754==    by 0x7AC4C3F: vtk_png_write_filtered_row (pngwutil.c:2602)
> ==16754==    by 0x7AC4B5E: vtk_png_write_find_filter (pngwutil.c:2569)
> ==16754==    by 0x7AA7F0E: vtk_png_write_row (pngwrite.c:881)
> ==16754==    by 0x7AA7B63: vtk_png_write_image (pngwrite.c:714)
> ==16754==    by 0x5FF3D14: vtkPNGWriter::WriteSlice(vtkImageData*)
> (vtkPNGWriter.cxx:284)
> ==16754==    by 0x5FF30E3: vtkPNGWriter::Write() (vtkPNGWriter.cxx:106)
> ==16754==    by 0x4040E3: main (mesa_test.cxx:258)
> ==16754==
> ==16754== Use of uninitialised value of size 8
> ==16754==    at 0x8394B4F: deflate_slow (deflate.c:1261)
> ==16754==    by 0x8393109: vtk_zlib_deflate (deflate.c:516)
> ==16754==    by 0x7AC4C3F: vtk_png_write_filtered_row (pngwutil.c:2602)
> ==16754==    by 0x7AC4B5E: vtk_png_write_find_filter (pngwutil.c:2569)
> ==16754==    by 0x7AA7F0E: vtk_png_write_row (pngwrite.c:881)
> ==16754==    by 0x7AA7B63: vtk_png_write_image (pngwrite.c:714)
> ==16754==    by 0x5FF3D14: vtkPNGWriter::WriteSlice(vtkImageData*)
> (vtkPNGWriter.cxx:284)
> ==16754==    by 0x5FF30E3: vtkPNGWriter::Write() (vtkPNGWriter.cxx:106)
> ==16754==    by 0x4040E3: main (mesa_test.cxx:258)
> ==16754==
> ==16754== For counts of detected and suppressed errors, rerun with: -v
> ==16754== Use --track-origins=yes to see where uninitialised values come from
> ==16754== ERROR SUMMARY: 10000000 errors from 51 contexts (suppressed: 4 from 4)
>
> Thanks again,
>
> Best
>
> Eduard
>
>
> On Tue, Jan 17, 2012 at 6:44 PM, tom fogal<[email protected]>  wrote:
>> Hi Eduard!
>>
>> I recommend you do two things:
>>
>> 1) try this again with git's master instead of any 7.11 version.  That
>> branch was created back in summer and I think most developers think of
>> it as being in 'maintenance mode'; there are likely to be significant
>> changes at this point.
>>
>> 2) file a bug report (bugs.freedesktop.org).  I think this will get
>> lost otherwise.
>>
>> It would be interesting if the valgrind output changed with/without
>> --disable-asm.  You might also want to make sure that GLX_USE_TLS is
>> defined.
>>
>> Best,
>>
>> -tom
>>
>> Eduard Deines<[email protected]>  writes:
>>> Hello,
>>>
>>> I'm in the process to update our mesa version from 7.6 to 7.11. I have
>>> successfully compiled mesa 7.11 on a linux 64 bit machine with the
>>> following configuration:
>>>
>>>      /configure --prefix=install_dir --with-driver=xlib --disable-gles1
>>> --disable-gles2 --without-gallium-drivers --disable-glu --disable-glut
>>> --disable-glw --disable-egl
>>>
>>> I'm using mesa with VTK. When I do offscreen rendering in VTK using
>>> osmesa my program crashes. I've used gdb to find the position in the
>>> code where it crashes. I run the gdb with no success. I also ran
>>> valgrind and got the following output:
>>>
>>> Mesa: Initializing x86-64 optimizations
>>> ==9528== Invalid read of size 8
>>> ==9528==    at 0xAEE6DB7: glMatrixMode (glapi_x86-64.S:10535)
>>> ==9528==    by 0x4F6EF22:
>>> vtkXOpenGLRenderWindow::CreateOffScreenWindow(int, int)
>>> (vtkXOpenGLRenderWindow.cxx:1010)
>>> ==9528==    by 0x4F6F424: vtkXOpenGLRenderWindow::Initialize()
>>> (vtkXOpenGLRenderWindow.cxx:1142)
>>> ==9528==    by 0x4F6F81A: vtkXOpenGLRenderWindow::Start()
>>> (vtkXOpenGLRenderWindow.cxx:1261)
>>> ==9528==    by 0x4E383D2: vtkRenderWindow::DoStereoRender()
>>> (vtkRenderWindow.cxx:656)
>>> ==9528==    by 0x4E383AA: vtkRenderWindow::DoFDRender()
>>> (vtkRenderWindow.cxx:645)
>>> ==9528==    by 0x4E37E4A: vtkRenderWindow::DoAARender()
>>> (vtkRenderWindow.cxx:537)
>>> ==9528==    by 0x4E37413: vtkRenderWindow::Render() (vtkRenderWindow.cxx:362)
>>> ==9528==    by 0x4F7210C: vtkXOpenGLRenderWindow::Render()
>>> (vtkXOpenGLRenderWindow.cxx:1877)
>>> ==9528==    by 0x403E99: main (mesa_test.cxx:228)
>>> ==9528==  Address 0xee568d8 is not stack'd, malloc'd or (recently) free'd
>>>
>>>
>>> Am I using the wrong configuration parameters? Did I miss any
>>> configuration parameter?
>>> Is this a problem of the assembly code in mesa? If I turn the assembly
>>> off (--disable-asm) the program does not crash but there is also
>>> nothing rendered.
>>> I assume glapi is needed by mesa?
>>>
>>> Thanks in advance for your help!
>>>
>>> Eduard
>>> _______________________________________________
>>> mesa-users mailing list
>>> [email protected]
>>> http://lists.freedesktop.org/mailman/listinfo/mesa-users
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.