Module: Mesa Branch: staging/20.2 Commit: f8953b4d810d2ba29cebf74ad5d94e82a1c307ff URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f8953b4d810d2ba29cebf74ad5d94e82a1c307ff
Author: Marek Olšák <[email protected]> Date: Tue Oct 6 07:06:30 2020 -0400 ac/surface: fix valgrind warnings in DCC retile tile lookups ==12920== Conditional jump or move depends on uninitialised value(s) ==12920== at 0x8F39391: util_fast_urem32 (fast_urem_by_const.h:71) ==12920== by 0x8F39391: hash_table_search (hash_table.c:285) ==12920== by 0x8B06D5D: ac_compute_dcc_retile_tile_indices (ac_surface.c:136) Fixes: a37aeb128d5f7c "amd/common: Cache intra-tile addresses for retile map." Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7055> (cherry picked from commit a4e4644eff4160450b2a6648f3c160aa06256158) --- .pick_status.json | 2 +- src/amd/common/ac_surface.c | 15 ++++++++------- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index aefb6c9f338..27367ea6ec7 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -5971,7 +5971,7 @@ "description": "ac/surface: fix valgrind warnings in DCC retile tile lookups", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": "a37aeb128d5f7cf2fa5b8c61566bbd9f2c224a28" }, diff --git a/src/amd/common/ac_surface.c b/src/amd/common/ac_surface.c index 5eb79f1b4e5..94c42dc3132 100644 --- a/src/amd/common/ac_surface.c +++ b/src/amd/common/ac_surface.c @@ -128,13 +128,14 @@ ac_compute_dcc_retile_tile_indices(struct ac_addrlib *addrlib, unsigned bpp, unsigned swizzle_mode, bool rb_aligned, bool pipe_aligned) { - struct dcc_retile_tile_key key = (struct dcc_retile_tile_key) { - .family = info->family, - .bpp = bpp, - .swizzle_mode = swizzle_mode, - .rb_aligned = rb_aligned, - .pipe_aligned = pipe_aligned - }; + struct dcc_retile_tile_key key; + memset(&key, 0, sizeof(key)); + + key.family = info->family; + key.bpp = bpp; + key.swizzle_mode = swizzle_mode; + key.rb_aligned = rb_aligned; + key.pipe_aligned = pipe_aligned; struct hash_entry *entry = _mesa_hash_table_search(addrlib->dcc_retile_tile_indices, &key); if (entry) _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
