All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] drivers/amd/pm: check the return value of amdgpu_bo_kmap
@ 2022-09-22  4:17 ` Li Zhong
  0 siblings, 0 replies; 11+ messages in thread
From: Li Zhong @ 2022-09-22  4:17 UTC (permalink / raw)
  To: dri-devel, amd-gfx
  Cc: jiapeng.chong, Xinhui.Pan, guchun.chen, airlied, lijo.lazar,
	mario.limonciello, darren.powell, alexander.deucher, evan.quan,
	christian.koenig, Li Zhong

amdgpu_bo_kmap() returns error when fails to map buffer object. Add the
error check and propagate the error.

Signed-off-by: Li Zhong <floridsleeves@gmail.com>
---
 drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
index 1eb4e613b27a..ec055858eb95 100644
--- a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
+++ b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
@@ -1485,6 +1485,7 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
 {
 	struct pp_hwmgr *hwmgr = handle;
 	struct amdgpu_device *adev = hwmgr->adev;
+	int err;
 
 	if (!addr || !size)
 		return -EINVAL;
@@ -1492,7 +1493,9 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
 	*addr = NULL;
 	*size = 0;
 	if (adev->pm.smu_prv_buffer) {
-		amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
+		err = amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
+		if (err)
+			return err;
 		*size = adev->pm.smu_prv_buffer_size;
 	}
 
-- 
2.25.1


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

* [PATCH v2] drivers/amd/pm: check the return value of amdgpu_bo_kmap
@ 2022-09-22  4:17 ` Li Zhong
  0 siblings, 0 replies; 11+ messages in thread
From: Li Zhong @ 2022-09-22  4:17 UTC (permalink / raw)
  To: dri-devel, amd-gfx
  Cc: jiapeng.chong, Xinhui.Pan, guchun.chen, airlied, lijo.lazar,
	mario.limonciello, daniel, darren.powell, alexander.deucher,
	evan.quan, christian.koenig, Li Zhong

amdgpu_bo_kmap() returns error when fails to map buffer object. Add the
error check and propagate the error.

Signed-off-by: Li Zhong <floridsleeves@gmail.com>
---
 drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
index 1eb4e613b27a..ec055858eb95 100644
--- a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
+++ b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
@@ -1485,6 +1485,7 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
 {
 	struct pp_hwmgr *hwmgr = handle;
 	struct amdgpu_device *adev = hwmgr->adev;
+	int err;
 
 	if (!addr || !size)
 		return -EINVAL;
@@ -1492,7 +1493,9 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
 	*addr = NULL;
 	*size = 0;
 	if (adev->pm.smu_prv_buffer) {
-		amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
+		err = amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
+		if (err)
+			return err;
 		*size = adev->pm.smu_prv_buffer_size;
 	}
 
-- 
2.25.1


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

* RE: [PATCH v2] drivers/amd/pm: check the return value of amdgpu_bo_kmap
  2022-09-22  4:17 ` Li Zhong
@ 2022-09-22  4:23   ` Quan, Evan
  -1 siblings, 0 replies; 11+ messages in thread
From: Quan, Evan @ 2022-09-22  4:23 UTC (permalink / raw)
  To: Li Zhong, dri-devel, amd-gfx
  Cc: jiapeng.chong, Pan, Xinhui, Chen, Guchun, airlied, Lazar, Lijo,
	Limonciello, Mario, Powell, Darren, Deucher, Alexander, Koenig,
	Christian

[AMD Official Use Only - General]

Reviewed-by: Evan Quan <evan.quan@amd.com>

> -----Original Message-----
> From: Li Zhong <floridsleeves@gmail.com>
> Sent: Thursday, September 22, 2022 12:18 PM
> To: dri-devel@lists.freedesktop.org; amd-gfx@lists.freedesktop.org
> Cc: jiapeng.chong@linux.alibaba.com; Powell, Darren
> <Darren.Powell@amd.com>; Chen, Guchun <Guchun.Chen@amd.com>;
> Limonciello, Mario <Mario.Limonciello@amd.com>; Quan, Evan
> <Evan.Quan@amd.com>; Lazar, Lijo <Lijo.Lazar@amd.com>; daniel@ffwll.ch;
> airlied@linux.ie; Pan, Xinhui <Xinhui.Pan@amd.com>; Koenig, Christian
> <Christian.Koenig@amd.com>; Deucher, Alexander
> <Alexander.Deucher@amd.com>; Li Zhong <floridsleeves@gmail.com>
> Subject: [PATCH v2] drivers/amd/pm: check the return value of
> amdgpu_bo_kmap
> 
> amdgpu_bo_kmap() returns error when fails to map buffer object. Add the
> error check and propagate the error.
> 
> Signed-off-by: Li Zhong <floridsleeves@gmail.com>
> ---
>  drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> index 1eb4e613b27a..ec055858eb95 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> @@ -1485,6 +1485,7 @@ static int pp_get_prv_buffer_details(void *handle,
> void **addr, size_t *size)
>  {
>  	struct pp_hwmgr *hwmgr = handle;
>  	struct amdgpu_device *adev = hwmgr->adev;
> +	int err;
> 
>  	if (!addr || !size)
>  		return -EINVAL;
> @@ -1492,7 +1493,9 @@ static int pp_get_prv_buffer_details(void *handle,
> void **addr, size_t *size)
>  	*addr = NULL;
>  	*size = 0;
>  	if (adev->pm.smu_prv_buffer) {
> -		amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
> +		err = amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
> +		if (err)
> +			return err;
>  		*size = adev->pm.smu_prv_buffer_size;
>  	}
> 
> --
> 2.25.1

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

* RE: [PATCH v2] drivers/amd/pm: check the return value of amdgpu_bo_kmap
@ 2022-09-22  4:23   ` Quan, Evan
  0 siblings, 0 replies; 11+ messages in thread
From: Quan, Evan @ 2022-09-22  4:23 UTC (permalink / raw)
  To: Li Zhong, dri-devel, amd-gfx
  Cc: jiapeng.chong, Pan, Xinhui, Chen, Guchun, airlied, Lazar, Lijo,
	Limonciello, Mario, daniel, Powell, Darren, Deucher, Alexander,
	Koenig, Christian

[AMD Official Use Only - General]

Reviewed-by: Evan Quan <evan.quan@amd.com>

> -----Original Message-----
> From: Li Zhong <floridsleeves@gmail.com>
> Sent: Thursday, September 22, 2022 12:18 PM
> To: dri-devel@lists.freedesktop.org; amd-gfx@lists.freedesktop.org
> Cc: jiapeng.chong@linux.alibaba.com; Powell, Darren
> <Darren.Powell@amd.com>; Chen, Guchun <Guchun.Chen@amd.com>;
> Limonciello, Mario <Mario.Limonciello@amd.com>; Quan, Evan
> <Evan.Quan@amd.com>; Lazar, Lijo <Lijo.Lazar@amd.com>; daniel@ffwll.ch;
> airlied@linux.ie; Pan, Xinhui <Xinhui.Pan@amd.com>; Koenig, Christian
> <Christian.Koenig@amd.com>; Deucher, Alexander
> <Alexander.Deucher@amd.com>; Li Zhong <floridsleeves@gmail.com>
> Subject: [PATCH v2] drivers/amd/pm: check the return value of
> amdgpu_bo_kmap
> 
> amdgpu_bo_kmap() returns error when fails to map buffer object. Add the
> error check and propagate the error.
> 
> Signed-off-by: Li Zhong <floridsleeves@gmail.com>
> ---
>  drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> index 1eb4e613b27a..ec055858eb95 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> @@ -1485,6 +1485,7 @@ static int pp_get_prv_buffer_details(void *handle,
> void **addr, size_t *size)
>  {
>  	struct pp_hwmgr *hwmgr = handle;
>  	struct amdgpu_device *adev = hwmgr->adev;
> +	int err;
> 
>  	if (!addr || !size)
>  		return -EINVAL;
> @@ -1492,7 +1493,9 @@ static int pp_get_prv_buffer_details(void *handle,
> void **addr, size_t *size)
>  	*addr = NULL;
>  	*size = 0;
>  	if (adev->pm.smu_prv_buffer) {
> -		amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
> +		err = amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
> +		if (err)
> +			return err;
>  		*size = adev->pm.smu_prv_buffer_size;
>  	}
> 
> --
> 2.25.1

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

* Re: [PATCH v2] drivers/amd/pm: check the return value of amdgpu_bo_kmap
  2022-09-22  4:17 ` Li Zhong
@ 2022-09-22  6:49   ` Christian König
  -1 siblings, 0 replies; 11+ messages in thread
From: Christian König @ 2022-09-22  6:49 UTC (permalink / raw)
  To: Li Zhong, dri-devel, amd-gfx
  Cc: jiapeng.chong, Xinhui.Pan, guchun.chen, airlied, lijo.lazar,
	mario.limonciello, darren.powell, alexander.deucher, evan.quan

Am 22.09.22 um 06:17 schrieb Li Zhong:
> amdgpu_bo_kmap() returns error when fails to map buffer object. Add the
> error check and propagate the error.
>
> Signed-off-by: Li Zhong <floridsleeves@gmail.com>

We usually use "r" as return and error variables, but that's just a nit.

Reviewed-by: Christian König <christian.koenig@amd.com>

> ---
>   drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c | 5 ++++-
>   1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> index 1eb4e613b27a..ec055858eb95 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> @@ -1485,6 +1485,7 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
>   {
>   	struct pp_hwmgr *hwmgr = handle;
>   	struct amdgpu_device *adev = hwmgr->adev;
> +	int err;
>   
>   	if (!addr || !size)
>   		return -EINVAL;
> @@ -1492,7 +1493,9 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
>   	*addr = NULL;
>   	*size = 0;
>   	if (adev->pm.smu_prv_buffer) {
> -		amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
> +		err = amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
> +		if (err)
> +			return err;
>   		*size = adev->pm.smu_prv_buffer_size;
>   	}
>   


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

* Re: [PATCH v2] drivers/amd/pm: check the return value of amdgpu_bo_kmap
@ 2022-09-22  6:49   ` Christian König
  0 siblings, 0 replies; 11+ messages in thread
From: Christian König @ 2022-09-22  6:49 UTC (permalink / raw)
  To: Li Zhong, dri-devel, amd-gfx
  Cc: jiapeng.chong, Xinhui.Pan, guchun.chen, airlied, lijo.lazar,
	mario.limonciello, daniel, darren.powell, alexander.deucher,
	evan.quan

Am 22.09.22 um 06:17 schrieb Li Zhong:
> amdgpu_bo_kmap() returns error when fails to map buffer object. Add the
> error check and propagate the error.
>
> Signed-off-by: Li Zhong <floridsleeves@gmail.com>

We usually use "r" as return and error variables, but that's just a nit.

Reviewed-by: Christian König <christian.koenig@amd.com>

> ---
>   drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c | 5 ++++-
>   1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> index 1eb4e613b27a..ec055858eb95 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> @@ -1485,6 +1485,7 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
>   {
>   	struct pp_hwmgr *hwmgr = handle;
>   	struct amdgpu_device *adev = hwmgr->adev;
> +	int err;
>   
>   	if (!addr || !size)
>   		return -EINVAL;
> @@ -1492,7 +1493,9 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
>   	*addr = NULL;
>   	*size = 0;
>   	if (adev->pm.smu_prv_buffer) {
> -		amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
> +		err = amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
> +		if (err)
> +			return err;
>   		*size = adev->pm.smu_prv_buffer_size;
>   	}
>   


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

* Re: [PATCH v2] drivers/amd/pm: check the return value of amdgpu_bo_kmap
  2022-09-22  6:49   ` Christian König
@ 2022-09-22 14:42     ` Alex Deucher
  -1 siblings, 0 replies; 11+ messages in thread
From: Alex Deucher @ 2022-09-22 14:42 UTC (permalink / raw)
  To: Christian König
  Cc: jiapeng.chong, lijo.lazar, guchun.chen, airlied, dri-devel,
	Xinhui.Pan, amd-gfx, Li Zhong, darren.powell, alexander.deucher,
	evan.quan, mario.limonciello

Applied.  Thanks!

On Thu, Sep 22, 2022 at 2:49 AM Christian König
<christian.koenig@amd.com> wrote:
>
> Am 22.09.22 um 06:17 schrieb Li Zhong:
> > amdgpu_bo_kmap() returns error when fails to map buffer object. Add the
> > error check and propagate the error.
> >
> > Signed-off-by: Li Zhong <floridsleeves@gmail.com>
>
> We usually use "r" as return and error variables, but that's just a nit.
>
> Reviewed-by: Christian König <christian.koenig@amd.com>
>
> > ---
> >   drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c | 5 ++++-
> >   1 file changed, 4 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> > index 1eb4e613b27a..ec055858eb95 100644
> > --- a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> > +++ b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> > @@ -1485,6 +1485,7 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
> >   {
> >       struct pp_hwmgr *hwmgr = handle;
> >       struct amdgpu_device *adev = hwmgr->adev;
> > +     int err;
> >
> >       if (!addr || !size)
> >               return -EINVAL;
> > @@ -1492,7 +1493,9 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
> >       *addr = NULL;
> >       *size = 0;
> >       if (adev->pm.smu_prv_buffer) {
> > -             amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
> > +             err = amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
> > +             if (err)
> > +                     return err;
> >               *size = adev->pm.smu_prv_buffer_size;
> >       }
> >
>

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

* Re: [PATCH v2] drivers/amd/pm: check the return value of amdgpu_bo_kmap
@ 2022-09-22 14:42     ` Alex Deucher
  0 siblings, 0 replies; 11+ messages in thread
From: Alex Deucher @ 2022-09-22 14:42 UTC (permalink / raw)
  To: Christian König
  Cc: jiapeng.chong, lijo.lazar, guchun.chen, airlied, dri-devel,
	Xinhui.Pan, amd-gfx, Li Zhong, daniel, darren.powell,
	alexander.deucher, evan.quan, mario.limonciello

Applied.  Thanks!

On Thu, Sep 22, 2022 at 2:49 AM Christian König
<christian.koenig@amd.com> wrote:
>
> Am 22.09.22 um 06:17 schrieb Li Zhong:
> > amdgpu_bo_kmap() returns error when fails to map buffer object. Add the
> > error check and propagate the error.
> >
> > Signed-off-by: Li Zhong <floridsleeves@gmail.com>
>
> We usually use "r" as return and error variables, but that's just a nit.
>
> Reviewed-by: Christian König <christian.koenig@amd.com>
>
> > ---
> >   drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c | 5 ++++-
> >   1 file changed, 4 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> > index 1eb4e613b27a..ec055858eb95 100644
> > --- a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> > +++ b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> > @@ -1485,6 +1485,7 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
> >   {
> >       struct pp_hwmgr *hwmgr = handle;
> >       struct amdgpu_device *adev = hwmgr->adev;
> > +     int err;
> >
> >       if (!addr || !size)
> >               return -EINVAL;
> > @@ -1492,7 +1493,9 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
> >       *addr = NULL;
> >       *size = 0;
> >       if (adev->pm.smu_prv_buffer) {
> > -             amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
> > +             err = amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
> > +             if (err)
> > +                     return err;
> >               *size = adev->pm.smu_prv_buffer_size;
> >       }
> >
>

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

* Re: [PATCH v2] drivers/amd/pm: check the return value of amdgpu_bo_kmap
  2022-09-24 22:19 ` Li Zhong
  (?)
@ 2022-09-30 14:42 ` Alex Deucher
  -1 siblings, 0 replies; 11+ messages in thread
From: Alex Deucher @ 2022-09-30 14:42 UTC (permalink / raw)
  To: Li Zhong
  Cc: lijo.lazar, airlied, Xinhui.Pan, amd-gfx, dri-devel,
	alexander.deucher, evan.quan, christian.koenig

On Sat, Sep 24, 2022 at 6:20 PM Li Zhong <floridsleeves@gmail.com> wrote:
>
> amdgpu_bo_kmap() returns error when fails to map buffer object. Add the
> error check and propagate the error.
>
> Signed-off-by: Li Zhong <floridsleeves@gmail.com>
> ---
>
> v2: revise the compile error

Applied.  Thanks!

>
>  drivers/gpu/drm/amd/pm/legacy-dpm/kv_dpm.c       | 5 ++++-
>  drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c | 5 ++++-
>  2 files changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/pm/legacy-dpm/kv_dpm.c b/drivers/gpu/drm/amd/pm/legacy-dpm/kv_dpm.c
> index 8fd0782a2b20..f5e08b60f66e 100644
> --- a/drivers/gpu/drm/amd/pm/legacy-dpm/kv_dpm.c
> +++ b/drivers/gpu/drm/amd/pm/legacy-dpm/kv_dpm.c
> @@ -1384,13 +1384,16 @@ static int kv_dpm_enable(struct amdgpu_device *adev)
>  static void kv_dpm_disable(struct amdgpu_device *adev)
>  {
>         struct kv_power_info *pi = kv_get_pi(adev);
> +       int err;
>
>         amdgpu_irq_put(adev, &adev->pm.dpm.thermal.irq,
>                        AMDGPU_THERMAL_IRQ_LOW_TO_HIGH);
>         amdgpu_irq_put(adev, &adev->pm.dpm.thermal.irq,
>                        AMDGPU_THERMAL_IRQ_HIGH_TO_LOW);
>
> -       amdgpu_kv_smc_bapm_enable(adev, false);
> +       err = amdgpu_kv_smc_bapm_enable(adev, false);
> +       if (err)
> +               DRM_ERROR("amdgpu_kv_smc_bapm_enable failed\n");
>
>         if (adev->asic_type == CHIP_MULLINS)
>                 kv_enable_nb_dpm(adev, false);
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> index 1eb4e613b27a..ec055858eb95 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
> @@ -1485,6 +1485,7 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
>  {
>         struct pp_hwmgr *hwmgr = handle;
>         struct amdgpu_device *adev = hwmgr->adev;
> +       int err;
>
>         if (!addr || !size)
>                 return -EINVAL;
> @@ -1492,7 +1493,9 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
>         *addr = NULL;
>         *size = 0;
>         if (adev->pm.smu_prv_buffer) {
> -               amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
> +               err = amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
> +               if (err)
> +                       return err;
>                 *size = adev->pm.smu_prv_buffer_size;
>         }
>
> --
> 2.25.1
>

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

* [PATCH v2] drivers/amd/pm: check the return value of amdgpu_bo_kmap
@ 2022-09-24 22:19 ` Li Zhong
  0 siblings, 0 replies; 11+ messages in thread
From: Li Zhong @ 2022-09-24 22:19 UTC (permalink / raw)
  To: dri-devel, amd-gfx
  Cc: lijo.lazar, airlied, Xinhui.Pan, Li Zhong, alexander.deucher,
	evan.quan, christian.koenig

amdgpu_bo_kmap() returns error when fails to map buffer object. Add the
error check and propagate the error.

Signed-off-by: Li Zhong <floridsleeves@gmail.com>
---

v2: revise the compile error

 drivers/gpu/drm/amd/pm/legacy-dpm/kv_dpm.c       | 5 ++++-
 drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c | 5 ++++-
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/pm/legacy-dpm/kv_dpm.c b/drivers/gpu/drm/amd/pm/legacy-dpm/kv_dpm.c
index 8fd0782a2b20..f5e08b60f66e 100644
--- a/drivers/gpu/drm/amd/pm/legacy-dpm/kv_dpm.c
+++ b/drivers/gpu/drm/amd/pm/legacy-dpm/kv_dpm.c
@@ -1384,13 +1384,16 @@ static int kv_dpm_enable(struct amdgpu_device *adev)
 static void kv_dpm_disable(struct amdgpu_device *adev)
 {
 	struct kv_power_info *pi = kv_get_pi(adev);
+	int err;
 
 	amdgpu_irq_put(adev, &adev->pm.dpm.thermal.irq,
 		       AMDGPU_THERMAL_IRQ_LOW_TO_HIGH);
 	amdgpu_irq_put(adev, &adev->pm.dpm.thermal.irq,
 		       AMDGPU_THERMAL_IRQ_HIGH_TO_LOW);
 
-	amdgpu_kv_smc_bapm_enable(adev, false);
+	err = amdgpu_kv_smc_bapm_enable(adev, false);
+	if (err)
+		DRM_ERROR("amdgpu_kv_smc_bapm_enable failed\n");
 
 	if (adev->asic_type == CHIP_MULLINS)
 		kv_enable_nb_dpm(adev, false);
diff --git a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
index 1eb4e613b27a..ec055858eb95 100644
--- a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
+++ b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
@@ -1485,6 +1485,7 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
 {
 	struct pp_hwmgr *hwmgr = handle;
 	struct amdgpu_device *adev = hwmgr->adev;
+	int err;
 
 	if (!addr || !size)
 		return -EINVAL;
@@ -1492,7 +1493,9 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
 	*addr = NULL;
 	*size = 0;
 	if (adev->pm.smu_prv_buffer) {
-		amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
+		err = amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
+		if (err)
+			return err;
 		*size = adev->pm.smu_prv_buffer_size;
 	}
 
-- 
2.25.1


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

* [PATCH v2] drivers/amd/pm: check the return value of amdgpu_bo_kmap
@ 2022-09-24 22:19 ` Li Zhong
  0 siblings, 0 replies; 11+ messages in thread
From: Li Zhong @ 2022-09-24 22:19 UTC (permalink / raw)
  To: dri-devel, amd-gfx
  Cc: lijo.lazar, airlied, Xinhui.Pan, Li Zhong, daniel,
	alexander.deucher, evan.quan, christian.koenig

amdgpu_bo_kmap() returns error when fails to map buffer object. Add the
error check and propagate the error.

Signed-off-by: Li Zhong <floridsleeves@gmail.com>
---

v2: revise the compile error

 drivers/gpu/drm/amd/pm/legacy-dpm/kv_dpm.c       | 5 ++++-
 drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c | 5 ++++-
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/pm/legacy-dpm/kv_dpm.c b/drivers/gpu/drm/amd/pm/legacy-dpm/kv_dpm.c
index 8fd0782a2b20..f5e08b60f66e 100644
--- a/drivers/gpu/drm/amd/pm/legacy-dpm/kv_dpm.c
+++ b/drivers/gpu/drm/amd/pm/legacy-dpm/kv_dpm.c
@@ -1384,13 +1384,16 @@ static int kv_dpm_enable(struct amdgpu_device *adev)
 static void kv_dpm_disable(struct amdgpu_device *adev)
 {
 	struct kv_power_info *pi = kv_get_pi(adev);
+	int err;
 
 	amdgpu_irq_put(adev, &adev->pm.dpm.thermal.irq,
 		       AMDGPU_THERMAL_IRQ_LOW_TO_HIGH);
 	amdgpu_irq_put(adev, &adev->pm.dpm.thermal.irq,
 		       AMDGPU_THERMAL_IRQ_HIGH_TO_LOW);
 
-	amdgpu_kv_smc_bapm_enable(adev, false);
+	err = amdgpu_kv_smc_bapm_enable(adev, false);
+	if (err)
+		DRM_ERROR("amdgpu_kv_smc_bapm_enable failed\n");
 
 	if (adev->asic_type == CHIP_MULLINS)
 		kv_enable_nb_dpm(adev, false);
diff --git a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
index 1eb4e613b27a..ec055858eb95 100644
--- a/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
+++ b/drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
@@ -1485,6 +1485,7 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
 {
 	struct pp_hwmgr *hwmgr = handle;
 	struct amdgpu_device *adev = hwmgr->adev;
+	int err;
 
 	if (!addr || !size)
 		return -EINVAL;
@@ -1492,7 +1493,9 @@ static int pp_get_prv_buffer_details(void *handle, void **addr, size_t *size)
 	*addr = NULL;
 	*size = 0;
 	if (adev->pm.smu_prv_buffer) {
-		amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
+		err = amdgpu_bo_kmap(adev->pm.smu_prv_buffer, addr);
+		if (err)
+			return err;
 		*size = adev->pm.smu_prv_buffer_size;
 	}
 
-- 
2.25.1


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

end of thread, other threads:[~2022-09-30 14:43 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-22  4:17 [PATCH v2] drivers/amd/pm: check the return value of amdgpu_bo_kmap Li Zhong
2022-09-22  4:17 ` Li Zhong
2022-09-22  4:23 ` Quan, Evan
2022-09-22  4:23   ` Quan, Evan
2022-09-22  6:49 ` Christian König
2022-09-22  6:49   ` Christian König
2022-09-22 14:42   ` Alex Deucher
2022-09-22 14:42     ` Alex Deucher
2022-09-24 22:19 Li Zhong
2022-09-24 22:19 ` Li Zhong
2022-09-30 14:42 ` 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.