History log of /external/mesa3d/src/glx/dri2.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
6a3ac03f2b80c80655d66b31c0218754f70156de 12-Mar-2010 Dave Airlie <airlied@redhat.com> glx/dri2: add dri2 prime support.

This adds support for having libGL pick a different driver for prime support.

DRI_PRIME env var is set to the value retrieved from the server randr
provider calls, by the calling process. (generally DRI_PRIME=1 will be
the right answer).

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/glx/dri2.c
fbc2fcf685d22ec9bc9465e1f731529979497eaa 03-Aug-2011 Christopher James Halse Rogers <christopher.halse.rogers@canonical.com> glx/dri2: Paper over errors in DRI2Connect when indirect

DRI2 will throw BadRequest for this when the client is not local, but
DRI2 is an implementation detail and not something callers should have
to know about. Silently swallow errors in this case, and just propagate
the failure through DRI2Connect's return code.

Note: This is a candidate for the stable release branches.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=28125
Signed-off-by: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com>
/external/mesa3d/src/glx/dri2.c
4df137691ee29bb812347fa2c5f19095243ede22 06-May-2011 Jesse Barnes <jbarnes@virtuousgeek.org> GLX/DRI2: handle swap event swap count wrapping

Create a new GLX drawable struct to track client related info, and add a
wrap counter to it drawable and track it as we receive events. This
allows us to support the full 64 bits of the event structure we pass to
the client even though the server only gives us a 32 bit count.

Reviewed-by: Michel Dänzer <michel@daenzer.net>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
/external/mesa3d/src/glx/dri2.c
1e39fc784bc3d0d5ad01d9c147529ac0e10f1262 05-May-2011 Jesse Barnes <jbarnes@virtuousgeek.org> DRI2/GLX: use new swap event types

Use the new swap event type so we get valid SBC values.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
/external/mesa3d/src/glx/dri2.c
dc4a3edcf9d414d5098618d5d3b79d8dd90adcc3 05-May-2011 Dave Airlie <airlied@redhat.com> Revert "DRI2/GLX: make swap event handling match spec"

This reverts commit 70227e21bbd4411956ceeb5039640140e64a11a8.

revert this until we sort things out, with a new glproto release
with compatible struct names.
/external/mesa3d/src/glx/dri2.c
70227e21bbd4411956ceeb5039640140e64a11a8 03-May-2011 Jesse Barnes <jbarnes@virtuousgeek.org> DRI2/GLX: make swap event handling match spec

We only handle a 32 bit swap count, so use the new structure definitions.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
/external/mesa3d/src/glx/dri2.c
a0e510320009766faa5ff8c0ed744e87f8095df7 22-Sep-2010 Luca Barbieri <luca@luca-barbieri.com> glx: decouple dri2.c and GLX, fixing Gallium EGL and d3d1x build

The Gallium EGL state tracker reuses dri2.c but not the GLX code.

Currently there is a bit of code in dri2.c that is incorrectly tied
to GLX: instead, make it call an helper that both GLX and Gallium EGL
implement, like dri2InvalidateBuffers.

This avoids a link error complaining that dri2GetGlxDrawableFromXDrawableId
is undefined.

Note that we might want to move the whole event translation elsewhere,
and probably stop using non-XCB DRI2 altogether, but this seems to be
the minimal fix.
/external/mesa3d/src/glx/dri2.c
f24ec6367b1cf6c6822fa998df8a877288711427 09-Sep-2010 Kristian Høgsberg <krh@bitplanet.net> glx: Ignore DRI2 event for drawables we've destroyed

Since we now actually destroy GLX drawables, we get into situations where
we get events for drawables that no longer exist. Just ignore the
event in that case.
/external/mesa3d/src/glx/dri2.c
16887d042a917fa4773e4d853f50051b54e9948c 27-Aug-2010 Kristian Høgsberg <krh@bitplanet.net> glx: Drop broken drawable garbage collection

Doesn't work for pixmaps, was looking up the GLX XID and was never thread
safe. Instead, just destroy the client side structures when the
drawable is no long current for a context.
/external/mesa3d/src/glx/dri2.c
c356f5867f2c1fad7155df538b9affa8dbdcf869 28-Jul-2010 Kristian Høgsberg <krh@bitplanet.net> glx: Rename __GLXcontext and __GLXdisplayPrivate to struct types.
/external/mesa3d/src/glx/dri2.c
14a3d61ea37c0b0a2bf211a12118e592c3e0677b 28-Jul-2010 Carl Worth <cworth@cworth.org> Avoid compiler warning for unused glx_dpy variable.

My earlier attempt to eliminate this warning (c0ca2bfb2ad8c) was
invalid as it removed the variable declaration. Jerome correctly
reverted that (600c85efdb0ff) since the variable is used when
X_DRI2SwapBuffers is defined.

Here, instead of removing the declaration, we move it to inside the
correct #ifdef.
/external/mesa3d/src/glx/dri2.c
ab434f6b7641a64d30725a9ac24929240362d466 23-Jul-2010 Kristian Høgsberg <krh@bitplanet.net> glx: Use _Xglobal_lock for protecting extension display list

Avoids double locking glXLock in the X wire to event handlers.
/external/mesa3d/src/glx/dri2.c
600c85efdb0ff498c1f62e74efbda9f7096a74d3 21-Jul-2010 Jerome Glisse <jglisse@redhat.com> Revert "dri2: Remove an unused variable."

glx_info is used if X_DRI2SwapBuffers is defined
This reverts commit c0ca2bfb2ad8cf7fb9d756b5ae52cb77236ff605.
/external/mesa3d/src/glx/dri2.c
c0ca2bfb2ad8cf7fb9d756b5ae52cb77236ff605 21-Jul-2010 Carl Worth <cworth@cworth.org> dri2: Remove an unused variable.

To quiet a compiler warning.
/external/mesa3d/src/glx/dri2.c
3750ebd540510324ef5ada769537ae05309adadb 19-Jul-2010 Kristian Høgsberg <krh@bitplanet.net> glx: Fix drawable lookup in DRI2 event handler

DRI2 events are sent to the X drawable ID used to create the DRI2 drawable,
not the GLX drawable ID. So when an event comes in, we need to look up
the __GLXDRIdrawable by its X drawable ID, which needs a new hash table.
/external/mesa3d/src/glx/dri2.c
f8d81c31cee30821da3aab331a57f484f6a07a5d 14-Jul-2010 Nick Bowler <nbowler@draconx.ca> dri2: Track event mask in client code.

When direct rendering is being used, DRI2 BufferSwapComplete events are
sent unconditionally to clients, even if they haven't been requested.
This causes error messages to be printed by every freeglut application
of the form

freeglut (./gears): Unknown X event type: 104

and might confuse other clients.

This is a fixed up version of the patch by Jesse Barnes, which drops
BufferSwapComplete events if they are not requested by clients.

Fixes fdo bug 27962.

Signed-off-by: Nick Bowler <nbowler@draconx.ca>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
/external/mesa3d/src/glx/dri2.c
d2fe97a209134ff5267e8aa065865c3398bfb280 01-Jul-2010 Fernando Carrijo <fcarrijo@yahoo.com.br> mesa: Purge macros NEED_EVENTS and NEED_REPLIES

Signed-off-by: Fernando Carrijo <fcarrijo@yahoo.com.br>
Signed-off-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/glx/dri2.c
157bdd1446dd21cc87a89abdc890b2f6dc83af76 13-Apr-2010 Jesse Barnes <jbarnes@virtuousgeek.org> DRI2: report swap events correctly in direct rendered case

In the direct rendered case, we need to convert DRI2 swap complete
events to GLX events for the client to consume. This path had what
looks like a stray "& 0x75" from some earlier debugging that prevented
clients from seeing the right event code.
/external/mesa3d/src/glx/dri2.c
42ea25cb4ecae09b5cc011a95d42ba7f0645dde3 05-Apr-2010 Ian Romanick <ian.d.romanick@intel.com> Update to final names from GLX_INTEL_swap_event spec

Fixes bug #27454.
/external/mesa3d/src/glx/dri2.c
094c6fbc45cee1b53d9f1d7d4123d6da6a8958a3 23-Mar-2010 Kristian Høgsberg <krh@bitplanet.net> glx: Suppress BadDrawable from DRI2CopyRegion

This can happen when an X window is destroyed behind our back. We use
DRI2CopyRegion behind the scenes in many places (like flushing the fake
front to the real front) so we have to ignore X errors triggered in that
case.

The glean test cases trigger this consistently as they don't destroy the
GLX drawable nicely, they just destroy the X window.
/external/mesa3d/src/glx/dri2.c
846cf495226be78b05e74064662eba4e7eb8280e 16-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> glx: Fix a couple of warnings
/external/mesa3d/src/glx/dri2.c
215d0dae6151e83ca4dc1a65c96d56b0835d27e7 16-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> glx: Only register wire handlers for the events the server supports
/external/mesa3d/src/glx/dri2.c
61d26bc82e7c4100acfb551cbb0ba9d84bbc4ba5 08-Feb-2010 Francisco Jerez <currojerez@riseup.net> dri2: Event driven buffer validation.

When a buffer invalidation event is received from the X server, the
"invalidate" hook of the DRI2 flush extension is executed: A generic
implementation (dri2InvalidateDrawable) is provided that just bumps
the "pStamp" sequence number in __DRIdrawableRec.

For old servers not supporting buffer invalidation events, the
invalidate hook will be called before flushing the fake front/back
buffer (that's typically once per frame -- not a lot worse than the
situation we were in before).

No effort has been made on preserving backwards compatibility with
version 2 of the flush extension, but I think it's acceptable because
AFAIK no released stack is making use of it.

Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
/external/mesa3d/src/glx/dri2.c
6e8897ff9f90601ebf6eed500ad942c11b54d1f7 09-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> Retire miniglx and move the actual glx code up to src/glx
/external/mesa3d/src/glx/dri2.c