The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* [PATCH] drm/amd/display: Remove redundant NULL check before kfree in mod_power_create()
@ 2026-06-27  9:26 Ziran Zhang
  2026-06-27  9:43 ` [PATCH] drm/amd/display: Remove redundant NULL check before kfree() " Markus Elfring
  2026-06-27 10:09 ` [PATCH v2] drm/amd/display: Remove redundant NULL check before kfree " Ziran Zhang
  0 siblings, 2 replies; 7+ messages in thread
From: Ziran Zhang @ 2026-06-27  9:26 UTC (permalink / raw)
  To: Harry Wentland, Leo Li, Alex Deucher, Christian König,
	David Airlie, Simona Vetter
  Cc: Rodrigo Siqueira, amd-gfx, dri-devel, linux-kernel, Ziran Zhang

kfree() safely handles NULL pointers, so there is no need to check for
NULL before calling kfree().

Remove redundant NULL check.

Found by Coccinelle ifnullfree script.

Signed-off-by: Ziran Zhang <zhangcoder@yeah.net>
---
 drivers/gpu/drm/amd/display/modules/power/power.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/modules/power/power.c b/drivers/gpu/drm/amd/display/modules/power/power.c
index 5659a38b3..74d5530de 100644
--- a/drivers/gpu/drm/amd/display/modules/power/power.c
+++ b/drivers/gpu/drm/amd/display/modules/power/power.c
@@ -270,12 +270,10 @@ struct mod_power *mod_power_create(struct dc *dc,
 fail_bad_brightness_range:
 fail_alloc_backlight_array:
 	for (inst = 0; inst < edp_num; inst++)
-		if (core_power->bl_prop[inst].backlight_lut)
-			kfree(core_power->bl_prop[inst].backlight_lut);
+		kfree(core_power->bl_prop[inst].backlight_lut);
 fail_construct:
 	for (i = 0; i < MOD_POWER_MAX_CONCURRENT_STREAMS; i++) {
-		if (core_power->map[i].psr_context)
-			kfree(core_power->map[i].psr_context);
+		kfree(core_power->map[i].psr_context);
 	}
 	kfree(core_power->map);
 
@@ -295,8 +293,7 @@ void mod_power_destroy(struct mod_power *mod_power)
 				MOD_POWER_TO_CORE(mod_power);
 
 		for (i = 0; i < MOD_POWER_MAX_CONCURRENT_STREAMS; i++)
-			if (core_power->map[i].psr_context)
-				kfree(core_power->map[i].psr_context);
+			kfree(core_power->map[i].psr_context);
 
 		for (i = 0; i < core_power->num_entities; i++)
 			if (core_power->map[i].stream)
@@ -305,8 +302,7 @@ void mod_power_destroy(struct mod_power *mod_power)
 		kfree(core_power->map);
 
 		for (i = 0; i < MAX_NUM_EDP; i++)
-			if (core_power->bl_prop[i].backlight_lut)
-				kfree(core_power->bl_prop[i].backlight_lut);
+			kfree(core_power->bl_prop[i].backlight_lut);
 
 		kfree(core_power);
 	}
-- 
2.43.0


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

* Re: [PATCH] drm/amd/display: Remove redundant NULL check before kfree() in mod_power_create()
  2026-06-27  9:26 [PATCH] drm/amd/display: Remove redundant NULL check before kfree in mod_power_create() Ziran Zhang
@ 2026-06-27  9:43 ` Markus Elfring
  2026-06-27  9:54   ` Ziran Zhang
  2026-06-27 10:09 ` [PATCH v2] drm/amd/display: Remove redundant NULL check before kfree " Ziran Zhang
  1 sibling, 1 reply; 7+ messages in thread
From: Markus Elfring @ 2026-06-27  9:43 UTC (permalink / raw)
  To: Ziran Zhang, amd-gfx, dri-devel, Alex Deucher,
	Christian König, David Airlie, Harry Wentland, Leo Li,
	Simona Vetter
  Cc: LKML, Rodrigo Siqueira

…
> +++ b/drivers/gpu/drm/amd/display/modules/power/power.c
> @@ -270,12 +270,10 @@ struct mod_power *mod_power_create(struct dc *dc,
>  fail_bad_brightness_range:
>  fail_construct:
>  	for (i = 0; i < MOD_POWER_MAX_CONCURRENT_STREAMS; i++) {
> -		if (core_power->map[i].psr_context)
> -			kfree(core_power->map[i].psr_context);
> +		kfree(core_power->map[i].psr_context);
>  	}

May curly brackets be omitted here?
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/coding-style.rst?h=v7.1#n197

Regards,
Markus

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

* Re: [PATCH] drm/amd/display: Remove redundant NULL check before kfree() in mod_power_create()
  2026-06-27  9:43 ` [PATCH] drm/amd/display: Remove redundant NULL check before kfree() " Markus Elfring
@ 2026-06-27  9:54   ` Ziran Zhang
  0 siblings, 0 replies; 7+ messages in thread
From: Ziran Zhang @ 2026-06-27  9:54 UTC (permalink / raw)
  To: markus.elfring
  Cc: airlied, alexander.deucher, amd-gfx, christian.koenig, dri-devel,
	harry.wentland, linux-kernel, simona, siqueira, sunpeng.li,
	zhangcoder

On Sat, 27 Jun 2026 11:43:25 +0200, Markus Elfring wrote:
> …
> > +++ b/drivers/gpu/drm/amd/display/modules/power/power.c
> > @@ -270,12 +270,10 @@ struct mod_power *mod_power_create(struct dc *dc,
> >  fail_bad_brightness_range:
> …
> >  fail_construct:
> >  	for (i = 0; i < MOD_POWER_MAX_CONCURRENT_STREAMS; i++) {
> > -		if (core_power->map[i].psr_context)
> > -			kfree(core_power->map[i].psr_context);
> > +		kfree(core_power->map[i].psr_context);
> >  	}

> May curly brackets be omitted here?
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/coding-style.rst?h=v7.1#n197
> 
> Regards,
> Markus

Yes, you're right. I will send a v2 with this fixed.

Regards,
Ziran Zhang


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

* [PATCH v2] drm/amd/display: Remove redundant NULL check before kfree in mod_power_create()
  2026-06-27  9:26 [PATCH] drm/amd/display: Remove redundant NULL check before kfree in mod_power_create() Ziran Zhang
  2026-06-27  9:43 ` [PATCH] drm/amd/display: Remove redundant NULL check before kfree() " Markus Elfring
@ 2026-06-27 10:09 ` Ziran Zhang
  2026-06-27 11:53   ` Markus Elfring
  2026-06-27 13:13   ` [PATCH v3] " Ziran Zhang
  1 sibling, 2 replies; 7+ messages in thread
From: Ziran Zhang @ 2026-06-27 10:09 UTC (permalink / raw)
  To: Harry Wentland, Leo Li, Alex Deucher, Christian König,
	David Airlie, Simona Vetter, Markus Elfring
  Cc: Rodrigo Siqueira, amd-gfx, dri-devel, linux-kernel, Ziran Zhang

kfree() safely handles NULL pointers, so there is no need to check for
NULL before calling kfree().

Remove redundant NULL check.

Found by Coccinelle ifnullfree script.

Signed-off-by: Ziran Zhang <zhangcoder@yeah.net>
---
Changes in v2:
- Remove unnecessary brackets.

 .../gpu/drm/amd/display/modules/power/power.c    | 16 ++++++----------
 1 file changed, 6 insertions(+), 10 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/modules/power/power.c b/drivers/gpu/drm/amd/display/modules/power/power.c
index 5659a38b3..97889867a 100644
--- a/drivers/gpu/drm/amd/display/modules/power/power.c
+++ b/drivers/gpu/drm/amd/display/modules/power/power.c
@@ -270,13 +270,11 @@ struct mod_power *mod_power_create(struct dc *dc,
 fail_bad_brightness_range:
 fail_alloc_backlight_array:
 	for (inst = 0; inst < edp_num; inst++)
-		if (core_power->bl_prop[inst].backlight_lut)
-			kfree(core_power->bl_prop[inst].backlight_lut);
+		kfree(core_power->bl_prop[inst].backlight_lut);
 fail_construct:
-	for (i = 0; i < MOD_POWER_MAX_CONCURRENT_STREAMS; i++) {
-		if (core_power->map[i].psr_context)
-			kfree(core_power->map[i].psr_context);
-	}
+	for (i = 0; i < MOD_POWER_MAX_CONCURRENT_STREAMS; i++)
+		kfree(core_power->map[i].psr_context);
+
 	kfree(core_power->map);
 
 fail_alloc_map:
@@ -295,8 +293,7 @@ void mod_power_destroy(struct mod_power *mod_power)
 				MOD_POWER_TO_CORE(mod_power);
 
 		for (i = 0; i < MOD_POWER_MAX_CONCURRENT_STREAMS; i++)
-			if (core_power->map[i].psr_context)
-				kfree(core_power->map[i].psr_context);
+			kfree(core_power->map[i].psr_context);
 
 		for (i = 0; i < core_power->num_entities; i++)
 			if (core_power->map[i].stream)
@@ -305,8 +302,7 @@ void mod_power_destroy(struct mod_power *mod_power)
 		kfree(core_power->map);
 
 		for (i = 0; i < MAX_NUM_EDP; i++)
-			if (core_power->bl_prop[i].backlight_lut)
-				kfree(core_power->bl_prop[i].backlight_lut);
+			kfree(core_power->bl_prop[i].backlight_lut);
 
 		kfree(core_power);
 	}
-- 
2.43.0


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

* Re: [PATCH v2] drm/amd/display: Remove redundant NULL check before kfree in mod_power_create()
  2026-06-27 10:09 ` [PATCH v2] drm/amd/display: Remove redundant NULL check before kfree " Ziran Zhang
@ 2026-06-27 11:53   ` Markus Elfring
  2026-06-27 13:07     ` [PATCH] drm/amd/display: Remove redundant NULL check before kfree() " Ziran Zhang
  2026-06-27 13:13   ` [PATCH v3] " Ziran Zhang
  1 sibling, 1 reply; 7+ messages in thread
From: Markus Elfring @ 2026-06-27 11:53 UTC (permalink / raw)
  To: Ziran Zhang, amd-gfx, dri-devel, Alex Deucher,
	Christian König, David Airlie, Harry Wentland, Leo Li,
	Simona Vetter
  Cc: LKML, Rodrigo Siqueira

> kfree() safely handles NULL pointers, so there is no need to check for
> NULL before calling kfree().
…

How do you think about to append parentheses to another function name
in the summary phrase?

Regards,
Markus

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

* Re: [PATCH] drm/amd/display: Remove redundant NULL check before kfree() in mod_power_create()
  2026-06-27 11:53   ` Markus Elfring
@ 2026-06-27 13:07     ` Ziran Zhang
  0 siblings, 0 replies; 7+ messages in thread
From: Ziran Zhang @ 2026-06-27 13:07 UTC (permalink / raw)
  To: markus.elfring
  Cc: airlied, alexander.deucher, amd-gfx, christian.koenig, dri-devel,
	harry.wentland, linux-kernel, simona, siqueira, sunpeng.li,
	zhangcoder

On Sat, 27 Jun 2026 13:53:13 +0200, Markus Elfring wrote:
> > kfree() safely handles NULL pointers, so there is no need to check for
> > NULL before calling kfree().
> …

> How do you think about to append parentheses to another function name
> in the summary phrase?

> Regards,
> Markus

Oops!  I will send a v3.
Thanks for the review!

Regards,
Ziran Zhang


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

* [PATCH v3] drm/amd/display: Remove redundant NULL check before kfree() in mod_power_create()
  2026-06-27 10:09 ` [PATCH v2] drm/amd/display: Remove redundant NULL check before kfree " Ziran Zhang
  2026-06-27 11:53   ` Markus Elfring
@ 2026-06-27 13:13   ` Ziran Zhang
  1 sibling, 0 replies; 7+ messages in thread
From: Ziran Zhang @ 2026-06-27 13:13 UTC (permalink / raw)
  To: Harry Wentland, Leo Li, Alex Deucher, Christian König,
	David Airlie, Simona Vetter, Markus Elfring
  Cc: Rodrigo Siqueira, amd-gfx, dri-devel, linux-kernel, Ziran Zhang

kfree() safely handles NULL pointers, so there is no need to check for
NULL before calling kfree().

Remove redundant NULL check.

Found by Coccinelle ifnullfree script.

Signed-off-by: Ziran Zhang <zhangcoder@yeah.net>
---

Changes in v3:
- Add parentheses to "kfree" in subject line for consistency.

 .../gpu/drm/amd/display/modules/power/power.c    | 16 ++++++----------
 1 file changed, 6 insertions(+), 10 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/modules/power/power.c b/drivers/gpu/drm/amd/display/modules/power/power.c
index 5659a38b3..97889867a 100644
--- a/drivers/gpu/drm/amd/display/modules/power/power.c
+++ b/drivers/gpu/drm/amd/display/modules/power/power.c
@@ -270,13 +270,11 @@ struct mod_power *mod_power_create(struct dc *dc,
 fail_bad_brightness_range:
 fail_alloc_backlight_array:
 	for (inst = 0; inst < edp_num; inst++)
-		if (core_power->bl_prop[inst].backlight_lut)
-			kfree(core_power->bl_prop[inst].backlight_lut);
+		kfree(core_power->bl_prop[inst].backlight_lut);
 fail_construct:
-	for (i = 0; i < MOD_POWER_MAX_CONCURRENT_STREAMS; i++) {
-		if (core_power->map[i].psr_context)
-			kfree(core_power->map[i].psr_context);
-	}
+	for (i = 0; i < MOD_POWER_MAX_CONCURRENT_STREAMS; i++)
+		kfree(core_power->map[i].psr_context);
+
 	kfree(core_power->map);
 
 fail_alloc_map:
@@ -295,8 +293,7 @@ void mod_power_destroy(struct mod_power *mod_power)
 				MOD_POWER_TO_CORE(mod_power);
 
 		for (i = 0; i < MOD_POWER_MAX_CONCURRENT_STREAMS; i++)
-			if (core_power->map[i].psr_context)
-				kfree(core_power->map[i].psr_context);
+			kfree(core_power->map[i].psr_context);
 
 		for (i = 0; i < core_power->num_entities; i++)
 			if (core_power->map[i].stream)
@@ -305,8 +302,7 @@ void mod_power_destroy(struct mod_power *mod_power)
 		kfree(core_power->map);
 
 		for (i = 0; i < MAX_NUM_EDP; i++)
-			if (core_power->bl_prop[i].backlight_lut)
-				kfree(core_power->bl_prop[i].backlight_lut);
+			kfree(core_power->bl_prop[i].backlight_lut);
 
 		kfree(core_power);
 	}
-- 
2.43.0


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

end of thread, other threads:[~2026-06-27 13:19 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-27  9:26 [PATCH] drm/amd/display: Remove redundant NULL check before kfree in mod_power_create() Ziran Zhang
2026-06-27  9:43 ` [PATCH] drm/amd/display: Remove redundant NULL check before kfree() " Markus Elfring
2026-06-27  9:54   ` Ziran Zhang
2026-06-27 10:09 ` [PATCH v2] drm/amd/display: Remove redundant NULL check before kfree " Ziran Zhang
2026-06-27 11:53   ` Markus Elfring
2026-06-27 13:07     ` [PATCH] drm/amd/display: Remove redundant NULL check before kfree() " Ziran Zhang
2026-06-27 13:13   ` [PATCH v3] " Ziran Zhang

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