[Mesa-dev] [PATCH 5/6] radv: do not fast clears if one level can't be fast cleared
Samuel Pitoiset
samuel.pitoiset at gmail.com
Wed Jun 19 07:46:38 UTC 2019
On 6/19/19 1:38 AM, Bas Nieuwenhuizen wrote:
> On Tue, Jun 18, 2019 at 4:12 PM Samuel Pitoiset
> <samuel.pitoiset at gmail.com> wrote:
>> And fallback to slow color clears.
>>
>> Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
>> ---
>> src/amd/vulkan/radv_meta_clear.c | 14 ++++++++++++++
>> 1 file changed, 14 insertions(+)
>>
>> diff --git a/src/amd/vulkan/radv_meta_clear.c b/src/amd/vulkan/radv_meta_clear.c
>> index 7f8f69e10f6..ed7f19b1dce 100644
>> --- a/src/amd/vulkan/radv_meta_clear.c
>> +++ b/src/amd/vulkan/radv_meta_clear.c
>> @@ -1515,6 +1515,20 @@ radv_can_fast_clear_color(struct radv_cmd_buffer *cmd_buffer,
>> if (!can_avoid_fast_clear_elim)
>> return false;
>> }
>> +
>> + if (iview->image->info.levels > 1) {
>> + for (uint32_t l = 0; l < iview->level_count; l++) {
>> + uint32_t level = iview->base_mip + l;
>> + struct legacy_surf_level *surf_level =
>> + &iview->image->planes[0].surface.u.legacy.level[level];
> Same here, not comfortable accessing legacy data on GFX9.
Yeah, I will change that.
Thanks for the reviews Bas!
>> +
>> + /* Do not fast clears if one level can't be
>> + * fast cleared.
>> + */
>> + if (!surf_level->dcc_fast_clear_size)
>> + return false;
>> + }
>> + }
>> }
>>
>> return true;
>> --
>> 2.22.0
>>
>> _______________________________________________
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list