[PATCH v2] drm/buddy: Fix the warn on's during force merge

Paneer Selvam, Arunpravin arunpravin.paneerselvam at amd.com
Fri May 17 14:34:34 UTC 2024



On 5/17/2024 7:30 PM, Matthew Auld wrote:
> On 17/05/2024 14:50, Arunpravin Paneer Selvam wrote:
>> Move the fallback and block incompatible checks
>> above, so that we dont unnecessarily split the blocks
>> and leaving the unmerged. This resolves the unnecessary
>> warn on's thrown during force_merge call.
>>
>> v2:(Matthew)
>>    - Move the fallback and block incompatible checks above
>>      the contains check.
>>
>> Signed-off-by: Arunpravin Paneer Selvam 
>> <Arunpravin.PaneerSelvam at amd.com>
>> Fixes: 96950929eb23 ("drm/buddy: Implement tracking clear page feature")
> Reviewed-by: Matthew Auld <matthew.auld at intel.com>
>
> A follow up unit test to catch this edge case would be lovely.
Yes, I will follow up on this.

Thanks,
Arun.
>
>> ---
>>   drivers/gpu/drm/drm_buddy.c | 6 +++---
>>   1 file changed, 3 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/drm_buddy.c b/drivers/gpu/drm/drm_buddy.c
>> index 1daf778cf6fa..94f8c34fc293 100644
>> --- a/drivers/gpu/drm/drm_buddy.c
>> +++ b/drivers/gpu/drm/drm_buddy.c
>> @@ -524,11 +524,11 @@ __alloc_range_bias(struct drm_buddy *mm,
>>                   continue;
>>           }
>>   +        if (!fallback && block_incompatible(block, flags))
>> +            continue;
>> +
>>           if (contains(start, end, block_start, block_end) &&
>>               order == drm_buddy_block_order(block)) {
>> -            if (!fallback && block_incompatible(block, flags))
>> -                continue;
>> -
>>               /*
>>                * Find the free block within the range.
>>                */



More information about the amd-gfx mailing list