<div dir="ltr"><div>LGTM.<br><br></div>Reviewed-by: Laura Ekstrand <<a href="mailto:laura@jlekstrand.net">laura@jlekstrand.net</a>><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Mar 10, 2015 at 11:33 AM, Eduardo Lima Mitev <span dir="ltr"><<a href="mailto:elima@igalia.com" target="_blank">elima@igalia.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">The implementation of texture <-> pixel-buffer transfers in drivers common layer<br>
includes certain error checks and argument validation that don't belong there,<br>
considering how the Mesa codebase is laid out. These are higher level<br>
validations that, if necessary, should be performed earlier (i.e, in GL API<br>
entry points).<br>
<br>
This patch simply removes these error checks from driver code.<br>
<br>
For more information, see discussion at<br>
<a href="http://lists.freedesktop.org/archives/mesa-dev/2015-February/077417.html" target="_blank">http://lists.freedesktop.org/archives/mesa-dev/2015-February/077417.html</a>.<br>
---<br>
</span> src/mesa/drivers/common/meta_tex_subimage.c | 32 -----------------------------<br>
 1 file changed, 32 deletions(-)<br>
<br>
diff --git a/src/mesa/drivers/common/meta_tex_subimage.c b/src/mesa/drivers/common/meta_tex_subimage.c<br>
index e29addb..ad6e787 100644<br>
--- a/src/mesa/drivers/common/meta_tex_subimage.c<br>
+++ b/src/mesa/drivers/common/meta_tex_subimage.c<br>
@@ -150,9 +150,6 @@ _mesa_meta_pbo_TexSubImage(struct gl_context *ctx, GLuint dims,<br>
    bool success = false;<br>
    int z;<br>
<span class=""><br>
-   /* XXX: This should probably be passed in from somewhere */<br>
-   const char *where = "_mesa_meta_pbo_TexSubImage";<br>
-<br>
    if (!_mesa_is_bufferobj(packing->BufferObj) && !create_pbo)<br>
       return false;<br>
<br>
</span>@@ -165,19 +162,6 @@ _mesa_meta_pbo_TexSubImage(struct gl_context *ctx, GLuint dims,<br>
<span class="">    if (ctx->_ImageTransferState)<br>
       return false;<br>
<br>
-   if (!_mesa_validate_pbo_access(dims, packing, width, height, depth,<br>
-                                  format, type, INT_MAX, pixels)) {<br>
-      _mesa_error(ctx, GL_INVALID_OPERATION,<br>
-                  "%s(out of bounds PBO access)", where);<br>
-      return true;<br>
-   }<br>
-<br>
-   if (_mesa_check_disallowed_mapping(packing->BufferObj)) {<br>
-      /* buffer is mapped - that's an error */<br>
-      _mesa_error(ctx, GL_INVALID_OPERATION, "%s(PBO is mapped)", where);<br>
-      return true;<br>
-   }<br>
-<br>
</span>    /* For arrays, use a tall (height * depth) 2D texture but taking into<br>
     * account the inter-image padding specified with the image height packing<br>
     * property.<br>
@@ -277,9 +261,6 @@ _mesa_meta_pbo_GetTexSubImage(struct gl_context *ctx, GLuint dims,<br>
    bool success = false;<br>
    int z;<br>
<span class=""><br>
-   /* XXX: This should probably be passed in from somewhere */<br>
-   const char *where = "_mesa_meta_pbo_GetTexSubImage";<br>
-<br>
    if (!_mesa_is_bufferobj(packing->BufferObj))<br>
       return false;<br>
<br>
</span>@@ -292,19 +273,6 @@ _mesa_meta_pbo_GetTexSubImage(struct gl_context *ctx, GLuint dims,<br>
<span class="">    if (ctx->_ImageTransferState)<br>
       return false;<br>
<br>
-   if (!_mesa_validate_pbo_access(dims, packing, width, height, depth,<br>
-                                  format, type, INT_MAX, pixels)) {<br>
-      _mesa_error(ctx, GL_INVALID_OPERATION,<br>
-                  "%s(out of bounds PBO access)", where);<br>
-      return true;<br>
-   }<br>
-<br>
-   if (_mesa_check_disallowed_mapping(packing->BufferObj)) {<br>
-      /* buffer is mapped - that's an error */<br>
-      _mesa_error(ctx, GL_INVALID_OPERATION, "%s(PBO is mapped)", where);<br>
-      return true;<br>
-   }<br>
-<br>
</span>    /* For arrays, use a tall (height * depth) 2D texture but taking into<br>
     * account the inter-image padding specified with the image height packing<br>
     * property.<br>
<span class="HOEnZb"><font color="#888888">--<br>
2.1.3<br>
<br>
</font></span></blockquote></div><br></div>