Message ID | 7108c1871c6cb08d403c4fa6534bc7e6de4cb23d.1705245316.git.christophe.jaillet@wanadoo.fr (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/i915/guc: Remove usage of the deprecated ida_simple_xx() API | expand |
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@wanadoo.fr> Reviewed-by: Matthew Brost <matthew.brost@intel.com> > --- > 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 >
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@wanadoo.fr> > > Reviewed-by: Matthew Brost <matthew.brost@intel.com> Hi, polite reminder ;-) 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 >> > >
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@wanadoo.fr> > > > > Reviewed-by: Matthew Brost <matthew.brost@intel.com> > > 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 > > > > > > > >
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);
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@wanadoo.fr> --- drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-)