[PATCH] drm/buddy: Modify duplicate list_splice_tail call

Matthew Auld matthew.auld at intel.com
Fri Feb 16 11:11:26 UTC 2024


On 16/02/2024 10:00, Arunpravin Paneer Selvam wrote:
> Remove the duplicate list_splice_tail call when the
> total_allocated < size condition is true.
> 
> Cc: <stable at vger.kernel.org> # 6.7+
> Fixes: 8746c6c9dfa3 ("drm/buddy: Fix alloc_range() error handling code")
> Reported-by: Bert Karwatzki <spasswolf at web.de>
> Signed-off-by: Arunpravin Paneer Selvam <Arunpravin.PaneerSelvam at amd.com>
> ---
>   drivers/gpu/drm/drm_buddy.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_buddy.c b/drivers/gpu/drm/drm_buddy.c
> index c1a99bf4dffd..c4222b886db7 100644
> --- a/drivers/gpu/drm/drm_buddy.c
> +++ b/drivers/gpu/drm/drm_buddy.c
> @@ -538,13 +538,13 @@ static int __alloc_range(struct drm_buddy *mm,
>   		list_add(&block->left->tmp_link, dfs);
>   	} while (1);
>   
> -	list_splice_tail(&allocated, blocks);
> -
>   	if (total_allocated < size) {
>   		err = -ENOSPC;
>   		goto err_free;
>   	}
>   
> +	list_splice_tail(&allocated, blocks);

Sigh. Can we extend the unit test(s) to catch this?

Reviewed-by: Matthew Auld <matthew.auld at intel.com>

> +
>   	return 0;
>   
>   err_undo:
> 
> base-commit: a64056bb5a3215bd31c8ce17d609ba0f4d5c55ea


More information about the dri-devel mailing list