d57c85c1bf77f194720ab8d8dfa4b4885e44157d |
|
23-Jun-2016 |
Colin McDonald <cjmmail10-bz@yahoo.co.uk> |
glx: Call __glXInitVertexArrayState() with a usable gc. For each indirect context the indirect vertex array state must be initialised by __glXInitVertexArrayState in indirect_vertex_array.c. As noted in the routine header it requires that the glx context has been setup prior to the call, in order to test the server version and extensions. Currently __glXInitVertexArrayState is called from indirect_bind_context in indirect_glx.c, as follows: state = gc->client_state_private; if (state->array_state == NULL) { glGetString(GL_EXTENSIONS); glGetString(GL_VERSION); __glXInitVertexArrayState(gc); } But, the gc context is not yet usable at this stage, so the server queries fail, and __glXInitVertexArrayState is called without the server version and extension information it needs. This breaks multi-texturing as glXInitVertexArrayState doesn't get GL_MAX_TEXTURE_UNITS. It probably also breaks setup of other arrays: fog, secondary colour, vertex attributes. To fix this I have moved the call to __glXInitVertexArrayState to the end of MakeContextCurrent in glxcurrent.c, where the glx context is usable. Fixes a regression caused by commit 4fbdde889c. Fixes ARB_vertex_program usage in the arbvparray Mesa demo when run with indirect GLX and also the tex-skipped-unit piglit test when run with indirect GLX. Reviewed-by: Matt Turner <mattst88@gmail.com> Acked-by: Ian Romanick <ian.d.romanick@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=61907
/external/mesa3d/src/glx/indirect_glx.c
|
60a27ad122128145d28be37e9c0b0bc86a8e5181 |
|
23-Jun-2016 |
Giuseppe Bilotta <giuseppe.bilotta@gmail.com> |
Remove wrongly repeated words in comments Clean up misrepetitions ('if if', 'the the' etc) found throughout the comments. This has been done manually, after grepping case-insensitively for duplicate if, is, the, then, do, for, an, plus a few other typos corrected in fly-by v2: * proper commit message and non-joke title; * replace two 'as is' followed by 'is' to 'as-is'. v3: * 'a integer' => 'an integer' and similar (originally spotted by Jason Ekstrand, I fixed a few other similar ones while at it) Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Reviewed-by: Chad Versace <chad.versace@intel.com>
/external/mesa3d/src/glx/indirect_glx.c
|
5a459a036e33683410bab4df431ed553bd0eeb66 |
|
12-May-2014 |
Jon TURNEY <jon.turney@dronecode.org.uk> |
Fix build of appleglx Define GLX_USE_APPLEGL, as config/darwin used to, to turn on specific code to use the applegl direct renderer Convert src/glx/apple/Makefile to automake Since the applegl libGL is now built by linking libappleglx into libGL, rather than by linking selected files into a special libGL: - Remove duplicate code in apple/glxreply.c and apple/apple_glx.c. This makes apple/glxreply.c empty, so remove it - Some indirect rendering code is already guarded by !GLX_USE_APPLEGL, but we need to add those guards to indirect_glx.c, indirect_init.c (via it's generator), render2.c and vertarr.c so they don't generate anything Fix and update various includes glapi_gentable.c (which is only used on darwin), should be included in shared glapi as well, to provide _glapi_create_table_from_handle() Note that neither swrast nor indirect is supported in the APPLEGL path at the moment, which makes things more complex than they need to be. More untangling is needed to allow that v2: Correct apple/Makefile.am for srcdir != builddir Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
/external/mesa3d/src/glx/indirect_glx.c
|
2f519e463512ee6cad92a7c6bc0ae26077c4cdc9 |
|
18-Feb-2014 |
Emil Velikov <emil.l.velikov@gmail.com> |
glx/indirect: explicitly assign struct components for glx_*_vtable ... to improve readability of code. Set indirect_screen_vtable as a static const. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
/external/mesa3d/src/glx/indirect_glx.c
|
1090eb57552aed1f4e36ac97b5859ff4b2cc80a5 |
|
25-Oct-2013 |
Adam Jackson <ajax@redhat.com> |
glx: Fix return value from indirect_bind_context _XReply returns 1 on success, but indirect_bind_context returns 0 on success. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=70486 Reviewed-and-tested-by: Ian Romanick <ian.d.romanick@intel.com> Signed-off-by: Adam Jackson <ajax@redhat.com>
/external/mesa3d/src/glx/indirect_glx.c
|
d101204c23ba2f593881edeffff357309f3924cd |
|
04-Oct-2013 |
Adam Jackson <ajax@redhat.com> |
glx: Propagate failures from SendMakeCurrentRequest where possible Reviewed-by: Brian Paul <brianp@vmware.com> Signed-off-by: Adam Jackson <ajax@redhat.com>
/external/mesa3d/src/glx/indirect_glx.c
|
68412d5006586f8b5814d85f76985b9d632f36df |
|
04-Oct-2013 |
Adam Jackson <ajax@redhat.com> |
glx: Hide xGLXMakeCurrentReply inside SendMakeCurrentRequest Reviewed-by: Brian Paul <brianp@vmware.com> Signed-off-by: Adam Jackson <ajax@redhat.com>
/external/mesa3d/src/glx/indirect_glx.c
|
2eed9ff2fb5b218b7b274d2989b0dbbe5fcfedef |
|
18-Jul-2013 |
Tomasz Lis <tomasz.lis@intel.com> |
glx: Validate the GLX_RENDER_TYPE value Correctly handle the value of renderType in GLX context. In case of the value being incorrect, context creation fails. v2 (idr): indirect_create_context is just a memory allocator, so don't validate the GLX_RENDER_TYPE there. Fixes regressions in several GLX_ARB_create_context piglit tests. Signed-off-by: Tomasz Lis <tomasz.lis@intel.com> Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/glx/indirect_glx.c
|
27c8aa5cfbcf6f2ad21564dfcdabbe747c277cab |
|
17-Jul-2013 |
Tomasz Lis <tomasz.lis@intel.com> |
glx: Store the RENDER_TYPE in indirect rendering v2 (idr): Open-code the check for GLX_RENDER_TYPE. dri2_convert_glx_attribs can't be called from here because that function only exists in direct-rendering builds. Also add a stub version of indirect_create_context_attribs to tests/fake_glx_screen.cpp to prevent 'make check' regressions. Signed-off-by: Tomasz Lis <tomasz.lis@intel.com> Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/glx/indirect_glx.c
|
da3282b6e2f374b88daf09f7f3ba5b05af45f51a |
|
05-Sep-2012 |
Matt Turner <mattst88@gmail.com> |
Replace another malloc/memset-0 combination with calloc Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/glx/indirect_glx.c
|
6bda027e01c15df24d36de5bf3838ea8ed7e9e56 |
|
05-Sep-2012 |
Matt Turner <mattst88@gmail.com> |
Use calloc instead of malloc/memset-0 This patch has been generated by the following Coccinelle semantic patch: @@ expression E; identifier I; @@ - I = malloc(E); + I = calloc(1, E); ... - memset(I, 0, sizeof *I); Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/glx/indirect_glx.c
|
5067506ea6ada5eeae33b1acf1c916e00121c12a |
|
04-Sep-2012 |
Matt Turner <mattst88@gmail.com> |
Remove useless checks for NULL before freeing This patch has been generated by the following Coccinelle semantic patch: // Remove useless checks for NULL before freeing // // free (NULL) is a no-op, so there is no need to avoid it @@ expression E; @@ + free (E); + E = NULL; - if (unlikely (E != NULL)) { - free(E); ( - E = NULL; | - E = 0; ) ... - } @@ expression E; type T; @@ + free ((T) E); + E = NULL; - if (unlikely (E != NULL)) { - free((T) E); ( - E = NULL; | - E = 0; ) ... - } @@ expression E; @@ + free (E); - if (unlikely (E != NULL)) { - free (E); - } @@ expression E; type T; @@ + free ((T) E); - if (unlikely (E != NULL)) { - free ((T) E); - } Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/glx/indirect_glx.c
|
2b7a972e3f36bfcdc6fbe2b59d7ffdcde49c9405 |
|
04-Sep-2012 |
Matt Turner <mattst88@gmail.com> |
Don't cast the return value of malloc/realloc This patch has been generated by the following Coccinelle semantic patch: // Don't cast the return value of malloc/realloc. // // Casting the return value of malloc/realloc only stands to hide // errors. @@ type T; expression E1, E2; @@ - (T) ( _mesa_align_calloc(E1, E2) | _mesa_align_malloc(E1, E2) | calloc(E1, E2) | malloc(E1) | realloc(E1, E2) )
/external/mesa3d/src/glx/indirect_glx.c
|
7c7b7b068b1d0dc8e14b87dab5dbd4108f874f74 |
|
05-Sep-2012 |
Matt Turner <mattst88@gmail.com> |
Remove Xcalloc/Xmalloc/Xfree calls These calls allowed Xlib to use a custom memory allocator, but Xlib has used the standard C library functions since at least its initial import into git in 2003. It seems unlikely that it will grow a custom memory allocator. The functions now just add extra overhead. Replacing them will make future Coccinelle patches simpler. This patch has been generated by the following Coccinelle semantic patch: // Remove Xcalloc/Xmalloc/Xfree calls @@ expression E1, E2; @@ - Xcalloc (E1, E2) + calloc (E1, E2) @@ expression E; @@ - Xmalloc (E) + malloc (E) @@ expression E; @@ - Xfree (E) + free (E) @@ expression E; @@ - XFree (E) + free (E) Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/glx/indirect_glx.c
|
6a0640971f5e12d329e91f92996382a7227d7b08 |
|
30-Nov-2011 |
Ian Romanick <ian.d.romanick@intel.com> |
glx: Implement glx_screen_vtable::create_context_attribs for indirect contexts Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/glx/indirect_glx.c
|
43409fa7b0e64f6d73c3d33bc9a39ba26dd4caeb |
|
30-Nov-2011 |
Ian Romanick <ian.d.romanick@intel.com> |
glx: Add glx_screen_vtable::create_context_attribs Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/glx/indirect_glx.c
|
4dbd13cb3f5aeff6ddc85fd091b4677369c19778 |
|
07-Dec-2011 |
Ian Romanick <ian.d.romanick@intel.com> |
glx: Send DestroyContext protocol at the correct times Send the DestroyContext protocol immediately when glXDestroyContext is called, and never call it when glXFreeContextEXT is called. In both cases, either destroy the client-side structures or, if the context is current, set xid to None so that the client-side structures will be destroyed later. I believe this restores the behavior of the original SGI code. See src/glx/x11 around commit 5df82c8. The spec doesn't say anything about glXDestroyContext not really destroying imported contexts (it acts like glXFreeContextEXT instead), but that's what the original code did. Note that glXFreeContextEXT on a non-imported context does not destroy it either. Fixes the piglit test glx-free-context. NOTE: This is a candidate for the 7.11 branch. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Adam Jackson <ajax@redhat.com> Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/glx/indirect_glx.c
|
559e4f8ebcb186b491d7d687ac43f22a62448fc1 |
|
15-Jun-2011 |
Jeremy Huddleston <jeremyhu@apple.com> |
glx: Allow a context-specific fallback for glXGetProcAddress In applegl, GLX advertises the same extensions provided by OpenGL.framework even if such extensions are not provided by glapi. This allows a client to get access to such API. Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
/external/mesa3d/src/glx/indirect_glx.c
|
e09e5cb7d8b2d7a9d0ec61476e654528010b2b91 |
|
01-Jun-2011 |
Adam Jackson <ajax@redhat.com> |
glx: Remove (unused, broken) fastImageUnpack fast path Reviewed-by: Brian Paul <brianp@vmware.com> Signed-off-by: Adam Jackson <ajax@redhat.com>
/external/mesa3d/src/glx/indirect_glx.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/indirect_glx.c
|
23e2dec1a1cae26430a988e0c74b1f2b13eb0f6f |
|
07-Sep-2010 |
Jon TURNEY <jon.turney@dronecode.org.uk> |
glx: Only clear the stored context tag when the context has been unbound The calling order of ->bind and ->unbind changed and then ->unbind would clear the currentContextTag of the old context before ->bind could reuse it in the make current request, in the indirect case. Instead, clear the old currentContextTag if and only if we send a request to the server to actually unbind it or reassign it to another context. https://bugs.freedesktop.org/show_bug.cgi?id=29977 Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
/external/mesa3d/src/glx/indirect_glx.c
|
f485ee724d1f1bb57a5c8931f28e7a45ceb5b5d5 |
|
30-Jul-2010 |
Kristian Høgsberg <krh@bitplanet.net> |
glx: Compare old ctx against dummyCtx, not NULL https://bugs.freedesktop.org/show_bug.cgi?id=29302
/external/mesa3d/src/glx/indirect_glx.c
|
6849916170c0275c13510251a7b217c20f2b993e |
|
28-Jul-2010 |
Kristian Høgsberg <krh@bitplanet.net> |
glx: Split indirect and applegl implementations into different files
/external/mesa3d/src/glx/indirect_glx.c
|