[PATCH] drm/xe/guc: Remove usage of the deprecated ida_simple_xx() API
Christophe JAILLET
christophe.jaillet at wanadoo.fr
Tue Feb 20 18:58:32 UTC 2024
Le 14/01/2024 à 16:09, Christophe JAILLET a écrit :
> ida_alloc() and ida_free() should be preferred to the deprecated
> ida_simple_get() and ida_simple_remove().
>
> Note that the upper limit of ida_simple_get() is exclusive, but the one of
> ida_alloc_max() is inclusive. So a -1 has been added when needed.
>
> Signed-off-by: Christophe JAILLET <christophe.jaillet at wanadoo.fr>
> ---
> drivers/gpu/drm/xe/xe_guc_submit.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
> index 21ac68e3246f..11ffacd1dd58 100644
> --- a/drivers/gpu/drm/xe/xe_guc_submit.c
> +++ b/drivers/gpu/drm/xe/xe_guc_submit.c
> @@ -311,7 +311,7 @@ static void __release_guc_id(struct xe_guc *guc, struct xe_exec_queue *q, u32 xa
> q->guc->id - GUC_ID_START_MLRC,
> order_base_2(q->width));
> else
> - ida_simple_remove(&guc->submission_state.guc_ids, q->guc->id);
> + ida_free(&guc->submission_state.guc_ids, q->guc->id);
> }
>
> static int alloc_guc_id(struct xe_guc *guc, struct xe_exec_queue *q)
> @@ -335,8 +335,8 @@ static int alloc_guc_id(struct xe_guc *guc, struct xe_exec_queue *q)
> ret = bitmap_find_free_region(bitmap, GUC_ID_NUMBER_MLRC,
> order_base_2(q->width));
> } else {
> - ret = ida_simple_get(&guc->submission_state.guc_ids, 0,
> - GUC_ID_NUMBER_SLRC, GFP_NOWAIT);
> + ret = ida_alloc_max(&guc->submission_state.guc_ids,
> + GUC_ID_NUMBER_SLRC - 1, GFP_NOWAIT);
> }
> if (ret < 0)
> return ret;
Hi,
gentle reminder.
All patches to remove the ida_simple API have been sent.
And Matthew Wilcox seems happy with the on going work. (see [1])
Based on next-20240220
$git grep ida_simple_get | wc -l
36
https://elixir.bootlin.com/linux/v6.8-rc3/A/ident/ida_simple_get
50
https://elixir.bootlin.com/linux/v6.7.4/A/ident/ida_simple_get
81
Thanks
CJ
[1]: https://lore.kernel.org/all/ZaqruGVz734zjxrZ@casper.infradead.org/
More information about the dri-devel
mailing list