All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/amd/pm: Update intermediate power state for SI
@ 2021-09-23  4:29 Lijo Lazar
  2021-09-23 12:25 ` Zhang, Hawking
  2021-09-23 12:51 ` Alex Deucher
  0 siblings, 2 replies; 5+ messages in thread
From: Lijo Lazar @ 2021-09-23  4:29 UTC (permalink / raw)
  To: amd-gfx
  Cc: Alexander.Deucher, Hawking.Zhang, Kevin1.Wang, Kenneth.Feng, Evan.Quan

Update the current state as boot state during dpm initialization.
During the subsequent initialization, set_power_state gets called to
transition to the final power state. set_power_state refers to values
from the current state and without current state populated, it could
result in NULL pointer dereference.

Bug:https://gitlab.freedesktop.org/drm/amd/-/issues/1698

Signed-off-by: Lijo Lazar <lijo.lazar@amd.com>
---
 drivers/gpu/drm/amd/pm/powerplay/si_dpm.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c b/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
index bdbbeb959c68..81f82aa05ec2 100644
--- a/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
+++ b/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
@@ -6867,6 +6867,8 @@ static int si_dpm_enable(struct amdgpu_device *adev)
 	si_enable_auto_throttle_source(adev, AMDGPU_DPM_AUTO_THROTTLE_SRC_THERMAL, true);
 	si_thermal_start_thermal_controller(adev);
 
+	ni_update_current_ps(adev, boot_ps);
+
 	return 0;
 }
 
-- 
2.17.1


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

* RE: [PATCH] drm/amd/pm: Update intermediate power state for SI
  2021-09-23  4:29 [PATCH] drm/amd/pm: Update intermediate power state for SI Lijo Lazar
@ 2021-09-23 12:25 ` Zhang, Hawking
  2021-09-23 12:51 ` Alex Deucher
  1 sibling, 0 replies; 5+ messages in thread
From: Zhang, Hawking @ 2021-09-23 12:25 UTC (permalink / raw)
  To: Lazar, Lijo, amd-gfx
  Cc: Deucher, Alexander, Wang, Yang(Kevin), Feng, Kenneth, Quan, Evan

[AMD Official Use Only]

Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com>

Regards,
Hawking
-----Original Message-----
From: Lazar, Lijo <Lijo.Lazar@amd.com> 
Sent: Thursday, September 23, 2021 12:30
To: amd-gfx@lists.freedesktop.org
Cc: Deucher, Alexander <Alexander.Deucher@amd.com>; Zhang, Hawking <Hawking.Zhang@amd.com>; Wang, Yang(Kevin) <KevinYang.Wang@amd.com>; Feng, Kenneth <Kenneth.Feng@amd.com>; Quan, Evan <Evan.Quan@amd.com>
Subject: [PATCH] drm/amd/pm: Update intermediate power state for SI

Update the current state as boot state during dpm initialization.
During the subsequent initialization, set_power_state gets called to transition to the final power state. set_power_state refers to values from the current state and without current state populated, it could result in NULL pointer dereference.

Bug:https://gitlab.freedesktop.org/drm/amd/-/issues/1698

Signed-off-by: Lijo Lazar <lijo.lazar@amd.com>
---
 drivers/gpu/drm/amd/pm/powerplay/si_dpm.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c b/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
index bdbbeb959c68..81f82aa05ec2 100644
--- a/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
+++ b/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
@@ -6867,6 +6867,8 @@ static int si_dpm_enable(struct amdgpu_device *adev)
 	si_enable_auto_throttle_source(adev, AMDGPU_DPM_AUTO_THROTTLE_SRC_THERMAL, true);
 	si_thermal_start_thermal_controller(adev);
 
+	ni_update_current_ps(adev, boot_ps);
+
 	return 0;
 }
 
--
2.17.1

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

* Re: [PATCH] drm/amd/pm: Update intermediate power state for SI
  2021-09-23  4:29 [PATCH] drm/amd/pm: Update intermediate power state for SI Lijo Lazar
  2021-09-23 12:25 ` Zhang, Hawking
@ 2021-09-23 12:51 ` Alex Deucher
  2021-09-23 13:04   ` Lazar, Lijo
  1 sibling, 1 reply; 5+ messages in thread
From: Alex Deucher @ 2021-09-23 12:51 UTC (permalink / raw)
  To: Lijo Lazar
  Cc: amd-gfx list, Deucher, Alexander, Hawking Zhang, Kevin Wang,
	Kenneth Feng, Quan, Evan

Acked-by: Alex Deucher <alexander.deucher@amd.com>
Fixes: f9b7f3703ff9 ("drm/amdgpu/acpi: make ATPX/ATCS structures global (v2)")

Thanks!

On Thu, Sep 23, 2021 at 12:30 AM Lijo Lazar <lijo.lazar@amd.com> wrote:
>
> Update the current state as boot state during dpm initialization.
> During the subsequent initialization, set_power_state gets called to
> transition to the final power state. set_power_state refers to values
> from the current state and without current state populated, it could
> result in NULL pointer dereference.
>
> Bug:https://gitlab.freedesktop.org/drm/amd/-/issues/1698
>
> Signed-off-by: Lijo Lazar <lijo.lazar@amd.com>
> ---
>  drivers/gpu/drm/amd/pm/powerplay/si_dpm.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c b/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
> index bdbbeb959c68..81f82aa05ec2 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
> @@ -6867,6 +6867,8 @@ static int si_dpm_enable(struct amdgpu_device *adev)
>         si_enable_auto_throttle_source(adev, AMDGPU_DPM_AUTO_THROTTLE_SRC_THERMAL, true);
>         si_thermal_start_thermal_controller(adev);
>
> +       ni_update_current_ps(adev, boot_ps);
> +
>         return 0;
>  }
>
> --
> 2.17.1
>

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

* RE: [PATCH] drm/amd/pm: Update intermediate power state for SI
  2021-09-23 12:51 ` Alex Deucher
@ 2021-09-23 13:04   ` Lazar, Lijo
  2021-09-23 13:06     ` Alex Deucher
  0 siblings, 1 reply; 5+ messages in thread
From: Lazar, Lijo @ 2021-09-23 13:04 UTC (permalink / raw)
  To: Alex Deucher
  Cc: amd-gfx list, Deucher, Alexander, Zhang, Hawking, Wang,
	 Yang(Kevin),
	Feng, Kenneth, Quan, Evan

[AMD Official Use Only]

Hi Alex,

"Fixes" tag - I interpret it as fixes some broken logic in the earlier patch. This one doesn't fix f9b7f3703ff9 ("drm/amdgpu/acpi: make ATPX/ATCS structures global (v2)"). That patch's logic works well and is fine as it is. 

May be add a reference or some more details in the comments? 

Thanks,
Lijo

-----Original Message-----
From: Alex Deucher <alexdeucher@gmail.com> 
Sent: Thursday, September 23, 2021 6:21 PM
To: Lazar, Lijo <Lijo.Lazar@amd.com>
Cc: amd-gfx list <amd-gfx@lists.freedesktop.org>; Deucher, Alexander <Alexander.Deucher@amd.com>; Zhang, Hawking <Hawking.Zhang@amd.com>; Wang, Yang(Kevin) <KevinYang.Wang@amd.com>; Feng, Kenneth <Kenneth.Feng@amd.com>; Quan, Evan <Evan.Quan@amd.com>
Subject: Re: [PATCH] drm/amd/pm: Update intermediate power state for SI

Acked-by: Alex Deucher <alexander.deucher@amd.com>
Fixes: f9b7f3703ff9 ("drm/amdgpu/acpi: make ATPX/ATCS structures global (v2)")

Thanks!

On Thu, Sep 23, 2021 at 12:30 AM Lijo Lazar <lijo.lazar@amd.com> wrote:
>
> Update the current state as boot state during dpm initialization.
> During the subsequent initialization, set_power_state gets called to 
> transition to the final power state. set_power_state refers to values 
> from the current state and without current state populated, it could 
> result in NULL pointer dereference.
>
> Bug:https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2F
> gitlab.freedesktop.org%2Fdrm%2Famd%2F-%2Fissues%2F1698&amp;data=04%7C0
> 1%7Clijo.lazar%40amd.com%7C8a10ba2a0d7d4896ed1408d97e90d3cc%7C3dd8961f
> e4884e608e11a82d994e183d%7C0%7C0%7C637679982775776349%7CUnknown%7CTWFp
> bGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn
> 0%3D%7C1000&amp;sdata=gTpG97DwoTSYBTN%2BSZYiAAL4o1VjG5n%2BaHu65s%2BADG
> E%3D&amp;reserved=0
>
> Signed-off-by: Lijo Lazar <lijo.lazar@amd.com>
> ---
>  drivers/gpu/drm/amd/pm/powerplay/si_dpm.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c 
> b/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
> index bdbbeb959c68..81f82aa05ec2 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
> @@ -6867,6 +6867,8 @@ static int si_dpm_enable(struct amdgpu_device *adev)
>         si_enable_auto_throttle_source(adev, AMDGPU_DPM_AUTO_THROTTLE_SRC_THERMAL, true);
>         si_thermal_start_thermal_controller(adev);
>
> +       ni_update_current_ps(adev, boot_ps);
> +
>         return 0;
>  }
>
> --
> 2.17.1
>

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

* Re: [PATCH] drm/amd/pm: Update intermediate power state for SI
  2021-09-23 13:04   ` Lazar, Lijo
@ 2021-09-23 13:06     ` Alex Deucher
  0 siblings, 0 replies; 5+ messages in thread
From: Alex Deucher @ 2021-09-23 13:06 UTC (permalink / raw)
  To: Lazar, Lijo
  Cc: amd-gfx list, Deucher, Alexander, Zhang, Hawking, Wang,
	Yang(Kevin),
	Feng, Kenneth, Quan, Evan

On Thu, Sep 23, 2021 at 9:04 AM Lazar, Lijo <Lijo.Lazar@amd.com> wrote:
>
> [AMD Official Use Only]
>
> Hi Alex,
>
> "Fixes" tag - I interpret it as fixes some broken logic in the earlier patch. This one doesn't fix f9b7f3703ff9 ("drm/amdgpu/acpi: make ATPX/ATCS structures global (v2)"). That patch's logic works well and is fine as it is.
>
> May be add a reference or some more details in the comments?

yeah, probably skip that fixes tag.  I suspect this bug was there from
when dpm support was first added for SI if you want to dig up that
commit, otherwise, I can just send it out for stable as is with the
bug reference.

Alex


>
> Thanks,
> Lijo
>
> -----Original Message-----
> From: Alex Deucher <alexdeucher@gmail.com>
> Sent: Thursday, September 23, 2021 6:21 PM
> To: Lazar, Lijo <Lijo.Lazar@amd.com>
> Cc: amd-gfx list <amd-gfx@lists.freedesktop.org>; Deucher, Alexander <Alexander.Deucher@amd.com>; Zhang, Hawking <Hawking.Zhang@amd.com>; Wang, Yang(Kevin) <KevinYang.Wang@amd.com>; Feng, Kenneth <Kenneth.Feng@amd.com>; Quan, Evan <Evan.Quan@amd.com>
> Subject: Re: [PATCH] drm/amd/pm: Update intermediate power state for SI
>
> Acked-by: Alex Deucher <alexander.deucher@amd.com>
> Fixes: f9b7f3703ff9 ("drm/amdgpu/acpi: make ATPX/ATCS structures global (v2)")
>
> Thanks!
>
> On Thu, Sep 23, 2021 at 12:30 AM Lijo Lazar <lijo.lazar@amd.com> wrote:
> >
> > Update the current state as boot state during dpm initialization.
> > During the subsequent initialization, set_power_state gets called to
> > transition to the final power state. set_power_state refers to values
> > from the current state and without current state populated, it could
> > result in NULL pointer dereference.
> >
> > Bug:https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2F
> > gitlab.freedesktop.org%2Fdrm%2Famd%2F-%2Fissues%2F1698&amp;data=04%7C0
> > 1%7Clijo.lazar%40amd.com%7C8a10ba2a0d7d4896ed1408d97e90d3cc%7C3dd8961f
> > e4884e608e11a82d994e183d%7C0%7C0%7C637679982775776349%7CUnknown%7CTWFp
> > bGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn
> > 0%3D%7C1000&amp;sdata=gTpG97DwoTSYBTN%2BSZYiAAL4o1VjG5n%2BaHu65s%2BADG
> > E%3D&amp;reserved=0
> >
> > Signed-off-by: Lijo Lazar <lijo.lazar@amd.com>
> > ---
> >  drivers/gpu/drm/amd/pm/powerplay/si_dpm.c | 2 ++
> >  1 file changed, 2 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
> > b/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
> > index bdbbeb959c68..81f82aa05ec2 100644
> > --- a/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
> > +++ b/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
> > @@ -6867,6 +6867,8 @@ static int si_dpm_enable(struct amdgpu_device *adev)
> >         si_enable_auto_throttle_source(adev, AMDGPU_DPM_AUTO_THROTTLE_SRC_THERMAL, true);
> >         si_thermal_start_thermal_controller(adev);
> >
> > +       ni_update_current_ps(adev, boot_ps);
> > +
> >         return 0;
> >  }
> >
> > --
> > 2.17.1
> >

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

end of thread, other threads:[~2021-09-23 13:06 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-23  4:29 [PATCH] drm/amd/pm: Update intermediate power state for SI Lijo Lazar
2021-09-23 12:25 ` Zhang, Hawking
2021-09-23 12:51 ` Alex Deucher
2021-09-23 13:04   ` Lazar, Lijo
2021-09-23 13:06     ` Alex Deucher

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.