Created attachment 141470 [details] Apitrace get_image_num_layers() returns the number of layers for the original texture instead of the number of layers for the texture view. It leads to asserts in driver code: ../../../../../../mesa-git/src/mesa/drivers/dri/i965/intel_mipmap_tree.c:1940: miptree_layer_range_length: Assertion `start_layer + num_layers <= total_num_layers' failed.
Hello, I forgot to write here when sent a patch to fix the issue, here is the patch: https://patchwork.freedesktop.org/series/49352/ And I wrote a Piglit test which reproduces the issue: https://patchwork.freedesktop.org/patch/258180/
commit f9fd0cf4790cb2a530e75d1a2206dbb9d8af7cb2 Author: Danylo Piliaiev <danylo.piliaiev@gmail.com> Date: Thu Nov 15 12:03:31 2018 +0200 i965: Fix calculation of layers array length for isl_view Handle all cases in calculation of layers count for isl_view taking into account texture view and image unit. st_convert_image was taken as a reference. When u->Layered is true the whole level is taken with respect to image view. In other case only one layer is taken. v3: (Józef Kucia and Ilia Mirkin) - Rewrote patch by taking st_convert_image as a reference - Removed now unused get_image_num_layers function - Changed commit message v4: (Jason Ekstrand) - Added assert Fixes: 5a8c8903 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107856 Signed-off-by: Danylo Piliaiev <danylo.piliaiev@globallogic.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.