diff mbox series

drm/i915/guc: Remove usage of the deprecated ida_simple_xx() API

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

Commit Message

Christophe JAILLET Jan. 14, 2024, 3:15 p.m. UTC
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(-)

Comments

Matthew Brost Jan. 25, 2024, 12:04 a.m. UTC | #1
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
>
Christophe JAILLET April 14, 2024, 8:26 a.m. UTC | #2
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
>>
> 
>
Matthew Brost April 14, 2024, 11:41 p.m. UTC | #3
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 mbox series

Patch

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);