Mesa (master): 25 new commits
Timothy Arceri
tarceri at kemper.freedesktop.org
Thu Mar 16 03:14:34 UTC 2017
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=c83562ccaa5f4bd42f4f59c519b48faeb295e354
Author: Marek Olšák <marek.olsak at amd.com>
Date: Sun Feb 5 01:20:51 2017 +0100
gallium: implement the backend of threaded GL dispatch
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=93bdad3253cfa353cadf4444711c70f39e9baf09
Author: Gregory Hainaut <gregory.hainaut at gmail.com>
Date: Sun Feb 12 15:21:47 2017 +0100
mesa/glthread: restore the dispatch table when incompatible gl calls are detected
While a context only has a single glthread, the context itself can be
attached to several threads. Therefore the dispatch table must be
updated in all threads before the destruction of glthread. In others
words, glthread can only be destroyed safely when the context is deleted.
Fixes remaining crashes in the glx-multithread-makecurrent* tests.
V2: (Timothy Arceri) updated gl_API.dtd marshal_fail description.
Signed-off-by: Gregory Hainaut <gregory.hainaut at gmail.com>
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=70e715eea618f31a1b84a99b063c371af3513754
Author: Gregory Hainaut <gregory.hainaut at gmail.com>
Date: Mon Feb 13 19:14:28 2017 +0100
mesa/glthread: don't set a dispatch table if we aren't the owner
Fix crashes when glxMakeCurrent is called.
Signed-off-by: Gregory Hainaut <gregory.hainaut at gmail.com>
Signed-off-by: Marek Olšák <marek.olsak at amd.com>
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=012bfebc0779bd0eed10ccbdec2edb874992d0dd
Author: Eric Anholt <eric at anholt.net>
Date: Mon Mar 4 10:30:15 2013 -0800
mesa: Track the current vertex/element array buffers for glthread.
We want to support glthread on GLES contexts with reasonable apps, and on
desktop for apps that use VBOs but haven't completely moved to core GL.
To do so, we have to deal with the "the user may or may not pass user
pointers to draw calls" problem.
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=238d027ed6d11f7ced80e4c7a43ca62293914781
Author: Eric Anholt <eric at anholt.net>
Date: Mon Mar 4 09:47:40 2013 -0800
mesa: Disable glthread when glBegin() is called.
glBegin() swaps dispatch tables, and we don't have any code in place for
handling that in glthread (which also messes with dispatch tables), and I
don't particularly care to at this point.
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=cd1c003b18353c220b1b81dcecc9cab2996ce608
Author: Eric Anholt <eric at anholt.net>
Date: Thu Feb 28 18:15:58 2013 -0800
mesa: Add an attribute for conditions to turn off threading.
The threading for GL core is in place, but there are so few applications
actually using a core GL context that it would be nice to extend support
back. However, some of the features of compat GL (particularly user
vertex arrays) would be so expensive to track state for that we want to be
able to disable threading when we discover that the app is using them.
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=43d4f7a227eaa01ea4be32e598682abc912e8e83
Author: Eric Anholt <eric at anholt.net>
Date: Wed Feb 27 14:28:16 2013 -0800
mesa: Add support for asynchronous glDraw* on GL core.
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b18755a457996cc4e7d9ca9d6beea9314de2d005
Author: Eric Anholt <eric at anholt.net>
Date: Wed Feb 27 13:37:14 2013 -0800
mesa: Add support for NULL arguments like in glBufferData() in marshalling.
This will let us support things like glBufferData() that should be
asynchronous.
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=47f819d3cb89ab90914181e3c61744ac1f16e056
Author: Eric Anholt <eric at anholt.net>
Date: Fri Feb 15 16:33:33 2013 -0800
mesa: Statically allocate glthread command buffer in the batch struct.
This avoids an extra pointer dereference in the marshalling functions,
which, with the instruction count doing in the low 30s, could actually
matter for main-thread performance.
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=1d6b71c5c6264f9cc0f7ae7c35d27b5c88f3f8bf
Author: Eric Anholt <eric at anholt.net>
Date: Thu Dec 27 12:11:57 2012 -0800
glapi: Mark vertex attrib pointer functions as async.
These don't actually read data out of the pointers, they set the
pointers (or offsets in a VBO) to be used in a later draw call.
v2: Don't forget glVertexAttribIPointer, and don't bother with annotations
on aliases.
v3: Mark CompressedTexSubImage1D as sync also.
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a4a5de6f18feba0a3dd439163f3505f2ba20fa0c
Author: Paul Berry <stereotype441 at gmail.com>
Date: Fri Nov 16 11:43:08 2012 -0800
mesa: Custom thread marshalling for Flush.
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=154a4f267959f6975647720237a28bae1ae86c8d
Author: Paul Berry <stereotype441 at gmail.com>
Date: Wed Nov 14 10:40:22 2012 -0800
mesa: Custom thread marshalling for ShaderSource.
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=efd63e234a805edc8b1c9962610d70d3a62f7c18
Author: Eric Anholt <eric at anholt.net>
Date: Wed Jan 2 14:12:04 2013 -0800
mesa: Connect the generated GL command marshalling code to the build.
v2: Rebase on the Begin/End changes, and just disable this feature on
non-GL-core.
v3: (Timothy Arceri) enable for non-GL-core contexts. Remove
unrelated safe_mul() hunk. while loop style fix.
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=db06e91de205eff036cd6a2d48f41573f6a9535c
Author: Marek Olšák <marek.olsak at amd.com>
Date: Thu Sep 29 01:00:39 2016 +0200
Revert "mesa: make _mesa_alloc_dispatch_table() static"
This reverts commit 4009d22b61e76850b1b725f4e491da05c2406fa4.
glthread needs it.
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ef30ce97a6bc0a9a6e625df6964e1cdea0ccee4b
Author: Paul Berry <stereotype441 at gmail.com>
Date: Wed Oct 3 15:39:52 2012 -0700
mesa: Create pointers for multithread marshalling dispatch table.
This patch splits the context's CurrentDispatch pointer into two
pointers, CurrentClientDispatch, and CurrentServerDispatch, so that
when doing multithread marshalling, we can distinguish between the
dispatch table that's being used by the client (to serialize GL calls
into the marshal buffer) and the dispatch table that's being used by
the server (to execute the GL calls).
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d8d81fbc31619f6ecf0a1b5ded22e5576e1d1739
Author: Eric Anholt <eric at anholt.net>
Date: Fri Dec 28 15:05:34 2012 -0800
mesa: Add infrastructure for a worker thread to process GL commands.
v2: Keep an allocated buffer around instead of checking for one at the
start of every GL command. Inline the now-small space allocation
function.
v3: Remove duplicate !glthread->shutdown check, process remaining work
before shutdown.
v4: Fix leaks on destroy.
V5: (Timothy Arceri) fix order of source files in makefile
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a76a3cf664f93ca8a0a62281907a3f3342f44054
Author: Eric Anholt <eric at anholt.net>
Date: Thu Jan 3 11:56:54 2013 -0800
mesa: Validate count parameters when marshalling.
Otherwise, for example, glDeleteBuffers(-1, &bo) gets you a segfault
instead of GL_INVALID_VALUE.
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=05dd4a1104ea815e4627bab0fbd35d9abe49f024
Author: Paul Berry <stereotype441 at gmail.com>
Date: Wed Nov 7 13:03:13 2012 -0800
glapi: Generate GL API marshalling code from the XML.
This is not yet used in the build, just generated.
v2: Add missing build dependencies.
v3: Avoid mixing declarations and code, remove logic for avoiding emitting
code that the compiler's optimizer can deal with anyway.
v4: (Timothy Arceri) move safe_mul() genereation here from a later patch.
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f05524ffaa98488c3faecebe952f1676fbb6a09c
Author: Eric Anholt <eric at anholt.net>
Date: Tue Mar 5 11:51:18 2013 -0800
glapi: Mark compressed teximage functions as sync.
Without doing some additional tracking, we won't know whether the data
will be immediate user data, or will be loaded from a PBO. The normal
teximage functions will be sync by default because they don't know up
front what the size of their image data is. But for compressed teximage,
we have the count information, so they would end up async by default.
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f5052f45a20b1ce3ee25b8724cb6b90cd37ab45f
Author: Paul Berry <stereotype441 at gmail.com>
Date: Wed Nov 7 13:04:40 2012 -0800
glapi: Annotate functions with "marshal" attribute.
Several API functions require special treatment in order to be marshalled
to a background thread. Others can't be safely executed in a background
thread and need to be executed synchronously (e.g. since they return data
through a pointer argument).
This annotation will be used when code generating thread marshalling code,
to ensure that each function is marshalled in the correct way.
Note that PixelMap functions are marked as synchronous for now since
their pointer may be relative to buffer on the GPU, so we'll need
special logic to marshal them properly.
v2: Move description of attribute types to a comment in the dtd file.
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3b7b6adf3ac688f75f11624e551800d0d978293b
Author: Eric Anholt <eric at anholt.net>
Date: Thu Dec 27 17:39:37 2012 -0800
egl: Implement __DRI_BACKGROUND_CALLABLE
v2: (Timothy Arceri) use C99 initializers.
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=6b70d9fce39c32929372fb8cf62f1f9072fe91e1
Author: Paul Berry <stereotype441 at gmail.com>
Date: Wed Nov 14 15:50:27 2012 -0800
glx: Implement __DRI_BACKGROUND_CALLABLE
v2: Marek: Add DRI3 support.
v3: (Timothy Arceri) use C99 initializers.
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=77630841da53ec90415aee37fcc0ec4cf76941e1
Author: Paul Berry <stereotype441 at gmail.com>
Date: Wed Nov 14 14:26:22 2012 -0800
mesa: Add SetBackgroundContext to dd_function_table
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5bc527d39d2973f24ce062f23094177a660023c6
Author: Paul Berry <stereotype441 at gmail.com>
Date: Wed Nov 14 14:39:21 2012 -0800
dri: Update dri_util to keep track of __DRI_BACKGROUND_CALLABLE
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e043b2a1a0c5863585b45fa8fe58b90d6445dc0e
Author: Paul Berry <stereotype441 at gmail.com>
Date: Wed Nov 14 11:13:02 2012 -0800
dri_interface: Add new marshalling interfaces to dri_interface.h
Acked-by: Timothy Arceri <tarceri at itsqueeze.com>
Acked-by: Marek Olšák <maraeo at gmail.com>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Tested-by: Mike Lothian <mike at fireburn.co.uk>
More information about the mesa-commit
mailing list