Brian Paul wrote:

> Jonathan Bastien-Filiatrault wrote:
>   
>> Brian Paul wrote:
>>
>>     
>>> Jonathan Bastien-Filiatrault wrote:
>>>  
>>>       
>>>> [snip]
>>>> at around 45-50 fps with a 960 face model in zpass mode.
>>>>
>>>> PS: Have you noticed that some versions of the newer mesa does not 
>>>> seem to like mixing plain old vertex arrays with VBOs ? The mesa in 
>>>> Debian unstable(7.0.1) does not segfault on me with direct rendering 
>>>> with mixed code.
>>>>     
>>>>         
>>> Are you saying 7.0.1 works as expected but Mesa from git (or the swz 
>>> branch) doesn't work?  I don't quite follow what you're saying.
>>>   
>>>       
>> Sorry for the non-sequitur. The latest git and the swz branch tend to
>> segfault when mixing VBOs with plain old vertex arrays with DRI. This
>> problem is not present with the mesa in Debian. Disabling hardware
>> acceleration prevents the segfault. I am using the latest DDX and DRM
>> code. The kernel is 2.6.22.9 vanilla. The machine is a Dell D620, AMD64.
>> Here are the few last lines from valgrind:
>>
>> ==21659== Invalid read of size 8
>> ==21659==    at 0x806F3C9: _tnl_draw_prims (t_draw.c:131)
>> ==21659==    by 0x8067E83: vbo_exec_DrawArrays (vbo_exec_array.c:259)
>> ==21659==    by 0x805C413: neutral_DrawArrays (vtxfmt_tmp.h:328)
>> ==21659==    by 0x41E9D3: OglGeometry::drawShadowVolume(RenderPass
>> const&) (geometry.cpp:315)
>> ^^ vertex array draw
>> ==21659==    by 0x41EBE8: OglGeometry::render(RenderPass const&)
>> (geometry.cpp:357)
>> ==21659==    by 0x41697F: Drawable::draw(RenderPass const&) (drawable.h:32)
>> ==21659==    by 0x4169AF: DrawableObject::draw(RenderPass const&)
>> (drawableobject.h:14)
>> ==21659==    by 0x416DC3: Node::draw(RenderPass const&) (node.cpp:24)
>> ==21659==    by 0x417BBA: Scene::render() (scene.cpp:111)
>> ==21659==    by 0x4138FE: Window::draw() (window.cpp:242)
>> ==21659==    by 0x41393D: Window::draw_cb() (window.cpp:36)
>> ==21659==    by 0x4C4639A: processWindowWorkList (glut_event.c:1306)
>> ==21659==  Address 0x1C5D7558 is not stack'd, malloc'd or (recently) free'd
>>
>> I am pretty sure I am not passing invalid pointers to mesa. Shall I
>> write a test case ? Do you want to have a look at the code ?
>>     
>
> It would be ideal if you could provide a small test program and file a 
> bug report.  I'm working on tracking down a couple other VBO bugs in 
> between other things...
>
> -Brian
Due to my inexperience with VBO, I was forgetting to unbind the buffer
at the draw mentionned above, doing this does not trigger the segfault,
since glVertexPointer now knows where to look.

Sorry :-(

Jonathan

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
--
_______________________________________________
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to