Bug 33825

Summary: [r600g, wine] sync/fenc GL extension missing
Product: Mesa Reporter: Tobias Jakobi <liquid.acid>
Component: Drivers/Gallium/r600Assignee: Default DRI bug account <dri-devel>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium CC: jb.faq
Version: git   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Tobias Jakobi 2011-02-01 14:00:41 UTC
Hello,

I noticed that r600g currently neither implements NV_fence nor ARB_sync. Wine needs at least one of these extensions (I think ARB_sync is preferred) to emulate event queries for Direct3D.

Currently this results in lots of errors:
err:d3d:wined3d_event_query_test Event query created despite lack of GL support
err:d3d:IWineD3DEventQueryImpl_GetData The GL event query failed, returning D3DERR_INVALIDCALL

So this is more a feature request...

Greets,
Tobias
Comment 1 Matt Turner 2011-02-01 18:51:30 UTC
According to the specification [1], OpenGL 3.1 is required. You can see the status of OpenGL 3.x support here [2].

[1] http://www.opengl.org/registry/specs/ARB/sync.txt
[2] http://cgit.freedesktop.org/mesa/mesa/tree/docs/GL3.txt
Comment 2 Tobias Jakobi 2011-02-02 02:03:49 UTC
This is interesting, since ARB_sync is implemented in the i965 classic driver, which only advertises GL 2.1 support.
Comment 3 Ian Romanick 2011-02-02 09:52:27 UTC
(In reply to comment #1)
> According to the specification [1], OpenGL 3.1 is required. You can see the
> status of OpenGL 3.x support here [2].
> 
> [1] http://www.opengl.org/registry/specs/ARB/sync.txt
> [2] http://cgit.freedesktop.org/mesa/mesa/tree/docs/GL3.txt

I think that bit in the ARB_sync spec is incorrect.  I believe the extension is written against the OpenGL 3.1 spec, but I don't believe that 3.1 is actually required.  As Tobias mentions in comment #2, we implement this extension in the i965 driver without any problems.  We didn't encounter any odd interactions or dependencies along the way.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.