diff options
author | Timothy Arceri <[email protected]> | 2017-03-23 17:19:36 +1100 |
---|---|---|
committer | Timothy Arceri <[email protected]> | 2017-03-24 11:23:06 +1100 |
commit | adced4a2f9d017ae126a438f97eb305fa0ca3bd0 (patch) | |
tree | a89f2b3626dcc3fe6132a3a2ffe56e83ec1b967d /src/mesa/main/marshal.h | |
parent | 0a32b52a27e8530bda1e5048783d37f578c5b3c9 (diff) |
mesa/marshal: add custom BufferData/BufferSubData marshalling
GL_AMD_pinned_memory requires memory to be aligned correctly, so
we skip marshalling in this case. Also copying the data defeats
the purpose of EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD.
Fixes GL_AMD_pinned_memory piglit tests when glthread is enabled.
Acked-by: Edward O'Callaghan <[email protected]>
Diffstat (limited to 'src/mesa/main/marshal.h')
-rw-r--r-- | src/mesa/main/marshal.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/mesa/main/marshal.h b/src/mesa/main/marshal.h index 1b4fd515050..4e9a6653b4e 100644 --- a/src/mesa/main/marshal.h +++ b/src/mesa/main/marshal.h @@ -187,6 +187,8 @@ _mesa_glthread_is_compat_bind_vertex_array(const struct gl_context *ctx) struct marshal_cmd_ShaderSource; struct marshal_cmd_Flush; struct marshal_cmd_BindBuffer; +struct marshal_cmd_BufferData; +struct marshal_cmd_BufferSubData; void GLAPIENTRY _mesa_marshal_ShaderSource(GLuint shader, GLsizei count, @@ -210,4 +212,20 @@ void _mesa_unmarshal_BindBuffer(struct gl_context *ctx, const struct marshal_cmd_BindBuffer *cmd); +void +_mesa_unmarshal_BufferData(struct gl_context *ctx, + const struct marshal_cmd_BufferData *cmd); + +void GLAPIENTRY +_mesa_marshal_BufferData(GLenum target, GLsizeiptr size, const GLvoid * data, + GLenum usage); + +void +_mesa_unmarshal_BufferSubData(struct gl_context *ctx, + const struct marshal_cmd_BufferSubData *cmd); + +void GLAPIENTRY +_mesa_marshal_BufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, + const GLvoid * data); + #endif /* MARSHAL_H */ |