Mesa (master): meta: Pass null pointer for the pixel data to avoid unnecessary data upload

Anuj Phogat aphogat at kemper.freedesktop.org
Wed Feb 25 22:25:44 UTC 2015


Module: Mesa
Branch: master
Commit: 688309374d6e2ec8af10907e36f30f0028f16d55
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=688309374d6e2ec8af10907e36f30f0028f16d55

Author: Anuj Phogat <anuj.phogat at gmail.com>
Date:   Mon Feb 23 10:56:14 2015 -0800

meta: Pass null pointer for the pixel data to avoid unnecessary data upload

to a temporary pbo created in _mesa_meta_pbo_GetTexSubImage().

Signed-off-by: Anuj Phogat <anuj.phogat at gmail.com>
Reviewed-by: Neil Roberts <neil at linux.intel.com>

---

 src/mesa/drivers/common/meta_tex_subimage.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/mesa/drivers/common/meta_tex_subimage.c b/src/mesa/drivers/common/meta_tex_subimage.c
index 2aa3a4c..a851357 100644
--- a/src/mesa/drivers/common/meta_tex_subimage.c
+++ b/src/mesa/drivers/common/meta_tex_subimage.c
@@ -89,8 +89,11 @@ create_texture_for_pbo(struct gl_context *ctx, bool create_pbo,
        */
       _mesa_BindBuffer(pbo_target, *tmp_pbo);
 
+      /* In case of GL_PIXEL_PACK_BUFFER, pass null pointer for the pixel
+       * data to avoid unnecessary data copying in _mesa_BufferData().
+       */
       if (is_pixel_pack)
-         _mesa_BufferData(pbo_target, row_stride * height, pixels,
+         _mesa_BufferData(pbo_target, row_stride * height, NULL,
                           GL_STREAM_READ);
       else
          _mesa_BufferData(pbo_target, row_stride * height, pixels,




More information about the mesa-commit mailing list