diff options
author | Nicolai Hähnle <nicolai.haehnle@amd.com> | 2016-06-06 23:15:10 +0200 |
---|---|---|
committer | Nicolai Hähnle <nicolai.haehnle@amd.com> | 2016-06-10 20:20:39 +0200 |
commit | 42624ea837e8f422f1cd04403af915bd7f218b8d (patch) | |
tree | fac2cdc59adebf7637fb2fefc46ed548899d5e84 /src/intel/vulkan/anv_entrypoints_gen.py | |
parent | a1e69930e43f2876f662042bb94b76124dbe7dfc (diff) | |
download | external_mesa3d-42624ea837e8f422f1cd04403af915bd7f218b8d.zip external_mesa3d-42624ea837e8f422f1cd04403af915bd7f218b8d.tar.gz external_mesa3d-42624ea837e8f422f1cd04403af915bd7f218b8d.tar.bz2 |
st/mesa: use base level size as "guess" when available
When an applications specifies mip levels _before_ setting a mipmap texture
filter, we will initially guess a single texture level. When the second level
image is created, we try to allocate the full texture -- however, we get the
base level size guess wrong if that size is odd. This leads to yet another
re-allocation of the texture later during st_finalize_texture.
Even worse, this re-allocation breaks a (reasonable) assumption made by
st_generate_mipmaps, because the re-allocation in the finalization call will
again allocate a single-level pipe texture (based on the non-mipmap texture
filter!). As a result, mipmap generation fails in interesting ways.
All of this can be avoided by just using the fact that we already know the
size of the base level.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=95529
Cc: 12.0 <mesa-stable@lists.freedesktop.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
Diffstat (limited to 'src/intel/vulkan/anv_entrypoints_gen.py')
0 files changed, 0 insertions, 0 deletions