[Mesa-dev] [PATCH] vbo: process buffer binding state changes on draw when recording

Brian Paul brianp at vmware.com
Thu Feb 2 18:06:33 UTC 2017


Looks OK to me too.

Reviewed-by: Brian Paul <brianp at vmware.com>


On 02/02/2017 01:42 AM, Marek Olšák wrote:
> Reviewed-by: Marek Olšák <marek.olsak at amd.com <mailto:marek.olsak at amd.com>>
>
> On Feb 1, 2017 10:11 PM, "Ilia Mirkin" <imirkin at alum.mit.edu
> <mailto:imirkin at alum.mit.edu>> wrote:
>
>     The VBO module keeps track of any vbo buffers. It updates this list when
>     receiving an InvalidateState call, however this never happens when
>     recording draws right now. Make sure that we do all the usual state
>     updates when recording draws so that the VBO list may be kept up to
>     date.
>
>     Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu
>     <mailto:imirkin at alum.mit.edu>>
>     Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99631
>     <https://urldefense.proofpoint.com/v2/url?u=https-3A__bugs.freedesktop.org_show-5Fbug.cgi-3Fid-3D99631&d=DwMFaQ&c=uilaK90D4TOVoH58JNXRgQ&r=Ie7_encNUsqxbSRbqbNgofw0ITcfE8JKfaUjIQhncGA&m=qzLxzA3PjqQyPea2puqnI1c8nOfttFZViGD-6FyxnYo&s=7ELFJ-H7QYzI7xwKqry_pi4zAks0_lKoed8PCzBNxa0&e=>
>     ---
>       src/mesa/vbo/vbo_save_api.c | 7 +++++++
>       1 file changed, 7 insertions(+)
>
>     diff --git a/src/mesa/vbo/vbo_save_api.c b/src/mesa/vbo/vbo_save_api.c
>     index f648ccc..f8dab0c 100644
>     --- a/src/mesa/vbo/vbo_save_api.c
>     +++ b/src/mesa/vbo/vbo_save_api.c
>     @@ -78,6 +78,7 @@ USE OR OTHER DEALINGS IN THE SOFTWARE.
>       #include "main/api_arrayelt.h"
>       #include "main/vtxfmt.h"
>       #include "main/dispatch.h"
>     +#include "main/state.h"
>       #include "util/bitscan.h"
>
>       #include "vbo_context.h"
>     @@ -1159,6 +1160,9 @@ _save_OBE_DrawArrays(GLenum mode, GLint start,
>     GLsizei count)
>          if (save->out_of_memory)
>             return;
>
>     +   /* Make sure to process any VBO binding changes */
>     +   _mesa_update_state(ctx);
>     +
>          _ae_map_vbos(ctx);
>
>          vbo_save_NotifyBegin(ctx, (mode | VBO_SAVE_PRIM_WEAK
>     @@ -1202,6 +1206,9 @@ _save_OBE_DrawElementsBaseVertex(GLenum mode,
>     GLsizei count, GLenum type,
>          if (save->out_of_memory)
>             return;
>
>     +   /* Make sure to process any VBO binding changes */
>     +   _mesa_update_state(ctx);
>     +
>          _ae_map_vbos(ctx);
>
>          if (_mesa_is_bufferobj(indexbuf))
>     --
>     2.10.2
>
>     _______________________________________________
>     mesa-dev mailing list
>     mesa-dev at lists.freedesktop.org <mailto:mesa-dev at lists.freedesktop.org>
>     https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>     <https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.freedesktop.org_mailman_listinfo_mesa-2Ddev&d=DwMFaQ&c=uilaK90D4TOVoH58JNXRgQ&r=Ie7_encNUsqxbSRbqbNgofw0ITcfE8JKfaUjIQhncGA&m=qzLxzA3PjqQyPea2puqnI1c8nOfttFZViGD-6FyxnYo&s=f_kHdvtmxmcroE2iao9QV7Hsrui-HpIPvjKAzeRY1Pg&e=>
>
>
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.freedesktop.org_mailman_listinfo_mesa-2Ddev&d=DwIGaQ&c=uilaK90D4TOVoH58JNXRgQ&r=Ie7_encNUsqxbSRbqbNgofw0ITcfE8JKfaUjIQhncGA&m=qzLxzA3PjqQyPea2puqnI1c8nOfttFZViGD-6FyxnYo&s=f_kHdvtmxmcroE2iao9QV7Hsrui-HpIPvjKAzeRY1Pg&e=
>



More information about the mesa-dev mailing list