| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The drivers have been changed so that they behave as if all of the flags
were set. This is already implicit in most hardware drivers and required
for multiple contexts.
Some state trackers were also abusing the PIPE_FLUSH_RENDER_CACHE flag
to decide whether flush_frontbuffer should be called.
New flag ST_FLUSH_FRONT has been added to st_api.h as a replacement.
|
| |
|
|
|
|
| |
So that they don't have the driver-specific param and return type.
|
|
|
|
| |
Only st/xorg used it and even incorrectly with regards to pipelined transfers.
|
|
|
|
|
|
|
| |
Without this, EXT_texture_from_pixmap is trivially broken. With it,
it's merely subtly broken.
Signed-off-by: Adam Jackson <[email protected]>
|
| |
|
|
|
|
| |
I don't see a reason we need them.
|
| |
|
|
|
|
|
|
| |
This is a follow-up to commit b39bccbd4ed71e9585da4cf5acf7b887b2e90899.
Fixes Linux SCons build.
|
|
|
|
|
| |
This is a follow-up to the ARB_sync patch for st/mesa and completes
the ARB_sync implementation.
|
| |
|
| |
|
|
|
|
|
| |
This hopefully fixes wayland-egl's dependency
resolution for autogenerated wayland-drm headers.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When doing copy swapbuffers using drm, throttle on outstanding copy operations.
Introduces a new environment variable, EGL_THROTTLE_FENCES that the
user can use to indicate the desired number of outstanding swapbuffers, or
disable throttling using EGL_THROTTLE_FENCES=0.
This can and perhaps should be extended to the pageflip case as well, since
with some hardware pageflips can be pipelined. In case the pageflip syncs, the
throttle operation will be a no-op anyway.
Update copyright notices.
Signed-off-by: Thomas Hellstrom <[email protected]>
|
|
|
|
|
|
|
|
| |
Use the pageflip ioctl when available.
Otherwise, or when the backbuffer contents need to be preserved,
fall back to a copy operation.
Signed-off-by: Thomas Hellstrom <[email protected]>
|
|
|
|
|
|
|
| |
The copy swap can be used when we need to preserve the contents of
the back buffer or when there is no way to do native page-flipping.
Signed-off-by: Thomas Hellstrom <[email protected]>
|
|
|
|
|
|
|
|
| |
This makes it usable also for native helpers.
Also add inline functions to access the context and to
uninit the native display structure.
Signed-off-by: Thomas Hellstrom <[email protected]>
|
|
|
|
|
|
| |
whats one more between friends.
again bnf on irc.
|
|
|
|
|
|
| |
Init array size to 1,
reported by bnf on irc.
|
|
|
|
| |
reported by bnf on irc.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Needs to track this ourself since because we get into a race condition with
the dri_util.c code on make current when rendering to the front buffer.
This is what happens:
Old context is rendering to the front buffer.
App calls MakeCurrent with a new context. dri_util.c sets
drawable->driContextPriv to the new context and then calls the driver make
current. st/dri make current flushes the old context, which calls back into
st/dri via the flush frontbuffer hook. st/dri calls dri loader flush
frontbuffer, which calls invalidate buffer on the drawable into st/dri.
This is where things gets wrong. st/dri grabs the context from the dri
drawable (which now points to the new context) and calls invalidate
framebuffer to the new context which has not yet set the new drawable as its
framebuffers since we have not called make current yet, it asserts.
|
|
|
|
|
|
| |
This is a follow-up to commit eafb7f234d11a290b00dcaf5492b9bdad1cf5148.
Fixes Linux SCons build.
|
|
|
|
|
| |
And set a reasonable buffer usage flag everywhere instead of
just PIPE_USAGE_DEFAULT.
|
|
|
|
| |
This is a follow-up to commit cdca3c58aa2d9549f5188910e2a77b438516714f.
|
|
|
|
|
| |
This is redundant to pipe_draw_info::max_index and doesn't really fit
in the optimizations I plan.
|
| |
|
| |
|
|
|
|
|
| |
st/mesa/st_managaer.c needs render_buffer in order
to determinde which buffer should be rendered to.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
ctx->dPriv might be != NULL then draw which is NULL is accessed:
struct dri_drawable *draw = dri_drawable(driDrawPriv);
[..]
if (ctx->dPriv != driDrawPriv) {
ctx->dPriv = driDrawPriv;
draw->texture_stamp = driDrawPriv->lastStamp - 1;
}
|
| |
|
|
|
|
|
| |
A break for case _EGL_PLATFORM_X11 is missing.
introduced by: 381ea0d67a6d84a34d23571c49bbf4339ffda364
|
| |
|
|
|
|
|
| |
MESA_drm_image isnt limited to drm platform,
others can enable the extension too.
|
| |
|
| |
|
|
|
|
|
|
|
| |
When the paint is opaque (currently, solid color with alpha 1.0f), no
blending is needed for VG_BLEND_SRC_OVER. This eliminates the serious
performance hit introduced by 859106f196ade77f59f8787b071739901cd1a843
for a common scenario.
|
|
|
|
|
| |
Before create_handle returns, obj->handle is 0. Calling
handle_to_object will fail.
|
| |
|
|
|
|
| |
We try to load a DRI driver if this fails so don't confuse users.
|
|
|
|
| |
Before, we were just casting between 32-bit VGHandles and 64-bit pointers.
|
| |
|
|
|
|
|
|
|
|
|
| |
Per the spec, all OpenVG handles are 32-bit. We can't just cast them
to/from integers on 64-bit systems.
Start fixing that mess by introducing a set of handle/pointer conversion
functions in handle.h. The next step is to implement a handle/pointer
hash table...
|
|
|
|
| |
Reported by Vinson Lee.
|
| |
|