Re: [PATCH] drm/i915/guc: Remove usage of the deprecated ida_simple_xx() API

From: Matthew Brost
Date: Sun Apr 14 2024 - 19:43:06 EST


On Sun, Apr 14, 2024 at 10:26:35AM +0200, Christophe JAILLET wrote:
> Le 25/01/2024 à 01:04, Matthew Brost a écrit :
> > On Sun, Jan 14, 2024 at 04:15:34PM +0100, Christophe JAILLET wrote:
> > > 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_range() is inclusive. So a -1 has been added when needed.
> > >
> > > Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
> >
> > Reviewed-by: Matthew Brost <matthew.brost@xxxxxxxxx>
>
> Hi,
>
> polite reminder ;-)
>

Merged. Thanks for the patch.

Matt

> CJ
>
> >
> > > ---
> > > drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c | 13 ++++++-------
> > > 1 file changed, 6 insertions(+), 7 deletions(-)
> > >
> > > diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
> > > index a259f1118c5a..73ce21ddf682 100644
> > > --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
> > > +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
> > > @@ -2156,11 +2156,10 @@ static int new_guc_id(struct intel_guc *guc, struct intel_context *ce)
> > > order_base_2(ce->parallel.number_children
> > > + 1));
> > > else
> > > - ret = ida_simple_get(&guc->submission_state.guc_ids,
> > > - NUMBER_MULTI_LRC_GUC_ID(guc),
> > > - guc->submission_state.num_guc_ids,
> > > - GFP_KERNEL | __GFP_RETRY_MAYFAIL |
> > > - __GFP_NOWARN);
> > > + ret = ida_alloc_range(&guc->submission_state.guc_ids,
> > > + NUMBER_MULTI_LRC_GUC_ID(guc),
> > > + guc->submission_state.num_guc_ids - 1,
> > > + GFP_KERNEL | __GFP_RETRY_MAYFAIL | __GFP_NOWARN);
> > > if (unlikely(ret < 0))
> > > return ret;
> > > @@ -2183,8 +2182,8 @@ static void __release_guc_id(struct intel_guc *guc, struct intel_context *ce)
> > > + 1));
> > > } else {
> > > --guc->submission_state.guc_ids_in_use;
> > > - ida_simple_remove(&guc->submission_state.guc_ids,
> > > - ce->guc_id.id);
> > > + ida_free(&guc->submission_state.guc_ids,
> > > + ce->guc_id.id);
> > > }
> > > clr_ctx_id_mapping(guc, ce->guc_id.id);
> > > set_context_guc_id_invalid(ce);
> > > --
> > > 2.43.0
> > >
> >
> >
>