The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* [PATCH] drm/i915: Fix memory leaks in i915 selftests
@ 2023-04-13  3:13 Cong Liu
  2023-04-13  6:10 ` Andrzej Hajda
  2023-04-13  8:15 ` Andi Shyti
  0 siblings, 2 replies; 7+ messages in thread
From: Cong Liu @ 2023-04-13  3:13 UTC (permalink / raw)
  To: Jani Nikula, Joonas Lahtinen, Rodrigo Vivi, Tvrtko Ursulin,
	David Airlie, Daniel Vetter, Matthew Auld, Andi Shyti, Nirmoy Das,
	Andrzej Hajda, Matthew Brost, Jonathan Cavitt, Chris Wilson,
	Gwan-gyeong Mun, Mauro Carvalho Chehab, intel-gfx, dri-devel,
	linux-kernel
  Cc: Cong Liu

Fixes: c3bfba9a2225 ("drm/i915: Check for integer truncation on scatterlist creation")

Signed-off-by: Cong Liu <liucong2@kylinos.cn>
---
 drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
index 5361ce70d3f2..154801f1c468 100644
--- a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
+++ b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
@@ -69,8 +69,10 @@ static int fake_get_pages(struct drm_i915_gem_object *obj)
 
 	rem = round_up(obj->base.size, BIT(31)) >> 31;
 	/* restricted by sg_alloc_table */
-	if (overflows_type(rem, unsigned int))
+	if (overflows_type(rem, unsigned int)) {
+		kfree(pages);
 		return -E2BIG;
+	}
 
 	if (sg_alloc_table(pages, rem, GFP)) {
 		kfree(pages);
-- 
2.34.1


No virus found
		Checked by Hillstone Network AntiVirus

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH] drm/i915: Fix memory leaks in i915 selftests
  2023-04-13  3:13 [PATCH] drm/i915: Fix memory leaks in i915 selftests Cong Liu
@ 2023-04-13  6:10 ` Andrzej Hajda
  2023-04-13  7:15   ` Jani Nikula
  2023-04-13  8:15 ` Andi Shyti
  1 sibling, 1 reply; 7+ messages in thread
From: Andrzej Hajda @ 2023-04-13  6:10 UTC (permalink / raw)
  To: Cong Liu, Jani Nikula, Joonas Lahtinen, Rodrigo Vivi,
	Tvrtko Ursulin, David Airlie, Daniel Vetter, Matthew Auld,
	Andi Shyti, Nirmoy Das, Matthew Brost, Jonathan Cavitt,
	Chris Wilson, Gwan-gyeong Mun, Mauro Carvalho Chehab, intel-gfx,
	dri-devel, linux-kernel



On 13.04.2023 05:13, Cong Liu wrote:
> Fixes: c3bfba9a2225 ("drm/i915: Check for integer truncation on scatterlist creation")
>
> Signed-off-by: Cong Liu <liucong2@kylinos.cn>
> ---

Reviewed-by: Andrzej Hajda <andrzej.hajda@intel.com>

Regards
Andrzej
>   drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 4 +++-
>   1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> index 5361ce70d3f2..154801f1c468 100644
> --- a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> +++ b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> @@ -69,8 +69,10 @@ static int fake_get_pages(struct drm_i915_gem_object *obj)
>   
>   	rem = round_up(obj->base.size, BIT(31)) >> 31;
>   	/* restricted by sg_alloc_table */
> -	if (overflows_type(rem, unsigned int))
> +	if (overflows_type(rem, unsigned int)) {
> +		kfree(pages);
>   		return -E2BIG;
> +	}
>   
>   	if (sg_alloc_table(pages, rem, GFP)) {
>   		kfree(pages);


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] drm/i915: Fix memory leaks in i915 selftests
  2023-04-13  6:10 ` Andrzej Hajda
@ 2023-04-13  7:15   ` Jani Nikula
  2023-04-13  7:55     ` Cong Liu
  0 siblings, 1 reply; 7+ messages in thread
From: Jani Nikula @ 2023-04-13  7:15 UTC (permalink / raw)
  To: Andrzej Hajda, Cong Liu, Joonas Lahtinen, Rodrigo Vivi,
	Tvrtko Ursulin, David Airlie, Daniel Vetter, Matthew Auld,
	Andi Shyti, Nirmoy Das, Matthew Brost, Jonathan Cavitt,
	Chris Wilson, Gwan-gyeong Mun, Mauro Carvalho Chehab, intel-gfx,
	dri-devel, linux-kernel

On Thu, 13 Apr 2023, Andrzej Hajda <andrzej.hajda@intel.com> wrote:
> On 13.04.2023 05:13, Cong Liu wrote:

A commit message is still needed.

>> Fixes: c3bfba9a2225 ("drm/i915: Check for integer truncation on scatterlist creation")
>>

No blank line here.

BR,
Jani.

>> Signed-off-by: Cong Liu <liucong2@kylinos.cn>
>> ---
>
> Reviewed-by: Andrzej Hajda <andrzej.hajda@intel.com>
>
> Regards
> Andrzej
>>   drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 4 +++-
>>   1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
>> index 5361ce70d3f2..154801f1c468 100644
>> --- a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
>> +++ b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
>> @@ -69,8 +69,10 @@ static int fake_get_pages(struct drm_i915_gem_object *obj)
>>   
>>   	rem = round_up(obj->base.size, BIT(31)) >> 31;
>>   	/* restricted by sg_alloc_table */
>> -	if (overflows_type(rem, unsigned int))
>> +	if (overflows_type(rem, unsigned int)) {
>> +		kfree(pages);
>>   		return -E2BIG;
>> +	}
>>   
>>   	if (sg_alloc_table(pages, rem, GFP)) {
>>   		kfree(pages);
>

-- 
Jani Nikula, Intel Open Source Graphics Center

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH] drm/i915: Fix memory leaks in i915 selftests
  2023-04-13  7:15   ` Jani Nikula
@ 2023-04-13  7:55     ` Cong Liu
  2023-04-13  8:44       ` Andi Shyti
  0 siblings, 1 reply; 7+ messages in thread
From: Cong Liu @ 2023-04-13  7:55 UTC (permalink / raw)
  To: jani.nikula
  Cc: airlied, andi.shyti, andrzej.hajda, chris, daniel, dri-devel,
	gwan-gyeong.mun, intel-gfx, jonathan.cavitt, joonas.lahtinen,
	linux-kernel, liucong2, matthew.auld, matthew.brost, mchehab,
	nirmoy.das, rodrigo.vivi, tvrtko.ursulin

This patch fixes memory leaks on error escapes in function fake_get_pages

Fixes: c3bfba9a2225 ("drm/i915: Check for integer truncation on scatterlist creation")
Signed-off-by: Cong Liu <liucong2@kylinos.cn>
---
 drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
index 5361ce70d3f2..154801f1c468 100644
--- a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
+++ b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
@@ -69,8 +69,10 @@ static int fake_get_pages(struct drm_i915_gem_object *obj)
 
 	rem = round_up(obj->base.size, BIT(31)) >> 31;
 	/* restricted by sg_alloc_table */
-	if (overflows_type(rem, unsigned int))
+	if (overflows_type(rem, unsigned int)) {
+		kfree(pages);
 		return -E2BIG;
+	}
 
 	if (sg_alloc_table(pages, rem, GFP)) {
 		kfree(pages);
-- 
2.34.1


No virus found
		Checked by Hillstone Network AntiVirus

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH] drm/i915: Fix memory leaks in i915 selftests
  2023-04-13  3:13 [PATCH] drm/i915: Fix memory leaks in i915 selftests Cong Liu
  2023-04-13  6:10 ` Andrzej Hajda
@ 2023-04-13  8:15 ` Andi Shyti
  1 sibling, 0 replies; 7+ messages in thread
From: Andi Shyti @ 2023-04-13  8:15 UTC (permalink / raw)
  To: Cong Liu
  Cc: Jani Nikula, Joonas Lahtinen, Rodrigo Vivi, Tvrtko Ursulin,
	David Airlie, Daniel Vetter, Matthew Auld, Andi Shyti, Nirmoy Das,
	Andrzej Hajda, Matthew Brost, Jonathan Cavitt, Chris Wilson,
	Gwan-gyeong Mun, Mauro Carvalho Chehab, intel-gfx, dri-devel,
	linux-kernel

Hi Cong,

> Fixes: c3bfba9a2225 ("drm/i915: Check for integer truncation on scatterlist creation")
> 
> Signed-off-by: Cong Liu <liucong2@kylinos.cn>

As Jani suggested we need a commit message here. Would something
like this work for you?

"
We forget to free 'pages' after checking for overflow. Be sure to
properly free the allocated memory before exiting the
fake_free_pages() function.
"

If it's OK for you, then I can add this message and fix the blank
space before pushing this patch.

In any case:

Reviewed-by: Andi Shyti <andi.shyti@linux.intel.com> 

Andi

> ---
>  drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> index 5361ce70d3f2..154801f1c468 100644
> --- a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> +++ b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> @@ -69,8 +69,10 @@ static int fake_get_pages(struct drm_i915_gem_object *obj)
>  
>  	rem = round_up(obj->base.size, BIT(31)) >> 31;
>  	/* restricted by sg_alloc_table */
> -	if (overflows_type(rem, unsigned int))
> +	if (overflows_type(rem, unsigned int)) {
> +		kfree(pages);
>  		return -E2BIG;
> +	}
>  
>  	if (sg_alloc_table(pages, rem, GFP)) {
>  		kfree(pages);
> -- 
> 2.34.1
> 
> 
> No virus found
> 		Checked by Hillstone Network AntiVirus

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] drm/i915: Fix memory leaks in i915 selftests
  2023-04-13  7:55     ` Cong Liu
@ 2023-04-13  8:44       ` Andi Shyti
  2023-04-13  9:07         ` Cong Liu
  0 siblings, 1 reply; 7+ messages in thread
From: Andi Shyti @ 2023-04-13  8:44 UTC (permalink / raw)
  To: Cong Liu
  Cc: jani.nikula, airlied, andi.shyti, andrzej.hajda, chris, daniel,
	dri-devel, gwan-gyeong.mun, intel-gfx, jonathan.cavitt,
	joonas.lahtinen, linux-kernel, matthew.auld, matthew.brost,
	mchehab, nirmoy.das, rodrigo.vivi, tvrtko.ursulin

On Thu, Apr 13, 2023 at 03:55:26PM +0800, Cong Liu wrote:
> This patch fixes memory leaks on error escapes in function fake_get_pages
> 
> Fixes: c3bfba9a2225 ("drm/i915: Check for integer truncation on scatterlist creation")
> Signed-off-by: Cong Liu <liucong2@kylinos.cn>

OK, while I was proposing the adjustments suggested by Jani you
already replied to the e-mail. I will keep your version.

Anyway, next time, please, do not forget to add the r-b's, in
this case it was Andrzej's.

Andi

> ---
>  drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> index 5361ce70d3f2..154801f1c468 100644
> --- a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> +++ b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> @@ -69,8 +69,10 @@ static int fake_get_pages(struct drm_i915_gem_object *obj)
>  
>  	rem = round_up(obj->base.size, BIT(31)) >> 31;
>  	/* restricted by sg_alloc_table */
> -	if (overflows_type(rem, unsigned int))
> +	if (overflows_type(rem, unsigned int)) {
> +		kfree(pages);
>  		return -E2BIG;
> +	}
>  
>  	if (sg_alloc_table(pages, rem, GFP)) {
>  		kfree(pages);
> -- 
> 2.34.1
> 
> 
> No virus found
> 		Checked by Hillstone Network AntiVirus

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] drm/i915: Fix memory leaks in i915 selftests
  2023-04-13  8:44       ` Andi Shyti
@ 2023-04-13  9:07         ` Cong Liu
  0 siblings, 0 replies; 7+ messages in thread
From: Cong Liu @ 2023-04-13  9:07 UTC (permalink / raw)
  To: Andi Shyti
  Cc: jani.nikula, airlied, andrzej.hajda, chris, daniel, dri-devel,
	gwan-gyeong.mun, intel-gfx, jonathan.cavitt, joonas.lahtinen,
	linux-kernel, matthew.auld, matthew.brost, mchehab, nirmoy.das,
	rodrigo.vivi, tvrtko.ursulin

Hi Andi,

thank you for your reminder, next time I will pay attention to my 
format, and when someone has already
reviewed, add the Reviewed-by field

Regards.

On 2023/4/13 16:44, Andi Shyti wrote:
> On Thu, Apr 13, 2023 at 03:55:26PM +0800, Cong Liu wrote:
>> This patch fixes memory leaks on error escapes in function fake_get_pages
>>
>> Fixes: c3bfba9a2225 ("drm/i915: Check for integer truncation on scatterlist creation")
>> Signed-off-by: Cong Liu <liucong2@kylinos.cn>
> OK, while I was proposing the adjustments suggested by Jani you
> already replied to the e-mail. I will keep your version.
>
> Anyway, next time, please, do not forget to add the r-b's, in
> this case it was Andrzej's.
>
> Andi
>
>> ---
>>   drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 4 +++-
>>   1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
>> index 5361ce70d3f2..154801f1c468 100644
>> --- a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
>> +++ b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
>> @@ -69,8 +69,10 @@ static int fake_get_pages(struct drm_i915_gem_object *obj)
>>   
>>   	rem = round_up(obj->base.size, BIT(31)) >> 31;
>>   	/* restricted by sg_alloc_table */
>> -	if (overflows_type(rem, unsigned int))
>> +	if (overflows_type(rem, unsigned int)) {
>> +		kfree(pages);
>>   		return -E2BIG;
>> +	}
>>   
>>   	if (sg_alloc_table(pages, rem, GFP)) {
>>   		kfree(pages);
>> -- 
>> 2.34.1
>>
>>
>> No virus found
>> 		Checked by Hillstone Network AntiVirus

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2023-04-13  9:08 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-04-13  3:13 [PATCH] drm/i915: Fix memory leaks in i915 selftests Cong Liu
2023-04-13  6:10 ` Andrzej Hajda
2023-04-13  7:15   ` Jani Nikula
2023-04-13  7:55     ` Cong Liu
2023-04-13  8:44       ` Andi Shyti
2023-04-13  9:07         ` Cong Liu
2023-04-13  8:15 ` Andi Shyti

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox