[Mesa-dev] [PATCH] i965: Fix z_offset computation in intel_miptree_unmap_depthstencil()
Neil Roberts
neil at linux.intel.com
Wed Aug 6 09:50:39 PDT 2014
I'd just liked to point out that I made a nearly identical patch before
this patch was posted but I didn't get any review despite prodding
people a few times on #dri-devel. Maybe we should try to get into the
habit of searching patchwork for existing patches before posting to the
list. Does anyone have any suggestions for how I can get my patches more
noticed?
http://patchwork.freedesktop.org/patch/27168/
I also made a piglit test for the problem here:
http://cgit.freedesktop.org/piglit/commit/?id=108a17a4d78bcc7480754d2104b4
Regards,
- Neil
Jordan Justen <jljusten at gmail.com> writes:
> Reviewed-by: Jordan Justen <jordan.l.justen at intel.com>
>
> On Wed, Jul 16, 2014 at 3:32 PM, Anuj Phogat <anuj.phogat at gmail.com> wrote:
>> The bug is triggered by using glTexSubImage2d() with GL_DEPTH_STENCIL
>> as base internal format and non-zero x, y offsets. Currently x, y
>> offsets are ignored while updating the texture image.
>>
>> Fixes Khronos GLES3 CTS tests:
>> npot_tex_sub_image_2d
>> npot_tex_sub_image_3d
>> npot_pbo_tex_sub_image_2d
>> npot_pbo_tex_sub_image_2d
>>
>> Cc: <mesa-stable at lists.freedesktop.org>
>> Signed-off-by: Anuj Phogat <anuj.phogat at gmail.com>
>> ---
>> src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
>> index 2ab0faa..b36ffc7 100644
>> --- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
>> +++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
>> @@ -2129,9 +2129,9 @@ intel_miptree_unmap_depthstencil(struct brw_context *brw,
>> x + s_image_x + map->x,
>> y + s_image_y + map->y,
>> brw->has_swizzling);
>> - ptrdiff_t z_offset = ((y + z_image_y) *
>> + ptrdiff_t z_offset = ((y + z_image_y + map->y) *
>> (z_mt->pitch / 4) +
>> - (x + z_image_x));
>> + (x + z_image_x + map->x));
>>
>> if (map_z32f_x24s8) {
>> z_map[z_offset] = packed_map[(y * map->w + x) * 2 + 0];
>> --
>> 1.9.3
>>
>> _______________________________________________
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list