cc stable?
Reviewed-by: Samuel Pitoiset <samuel.pitoi...@gmail.com>
On 11/24/18 11:31 PM, Bas Nieuwenhuizen wrote:
Mirrors AMDVLK. Looks like if we go over the alignment of height
we actually start to change the addressing. Seems like the extra
miplevels actually work with this.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108245
Fixes: f6cc15dccd5 "radv/gfx9: fix block compression texture views. (v2)"
---
src/amd/vulkan/radv_image.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/src/amd/vulkan/radv_image.c b/src/amd/vulkan/radv_image.c
index 7492bf48b51..ba8e28f0e23 100644
--- a/src/amd/vulkan/radv_image.c
+++ b/src/amd/vulkan/radv_image.c
@@ -1175,8 +1175,6 @@ radv_image_view_init(struct radv_image_view *iview,
if (device->physical_device->rad_info.chip_class >= GFX9 &&
vk_format_is_compressed(image->vk_format) &&
!vk_format_is_compressed(iview->vk_format)) {
- unsigned rounded_img_w =
util_next_power_of_two(iview->extent.width);
- unsigned rounded_img_h =
util_next_power_of_two(iview->extent.height);
unsigned lvl_width = radv_minify(image->info.width ,
range->baseMipLevel);
unsigned lvl_height = radv_minify(image->info.height,
range->baseMipLevel);
@@ -1186,8 +1184,8 @@ radv_image_view_init(struct radv_image_view *iview,
lvl_width <<= range->baseMipLevel;
lvl_height <<= range->baseMipLevel;
- iview->extent.width = CLAMP(lvl_width, iview->extent.width, rounded_img_w);
- iview->extent.height = CLAMP(lvl_height,
iview->extent.height, rounded_img_h);
+ iview->extent.width = CLAMP(lvl_width, iview->extent.width,
iview->image->surface.u.gfx9.surf_pitch);
+ iview->extent.height = CLAMP(lvl_height,
iview->extent.height, iview->image->surface.u.gfx9.surf_height);
}
}
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev