From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Zhu, Rex" Subject: Re: [PATCH 2/4] drm/amdgpu: Plus NULL function pointer check Date: Mon, 12 Mar 2018 14:13:42 +0000 Message-ID: References: <1520858050-7338-1-git-send-email-Rex.Zhu@amd.com> <1520858050-7338-2-git-send-email-Rex.Zhu@amd.com>, <71e3bf37-5289-422b-7b04-de2d4e60ce9c@gmail.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1831271150==" Return-path: In-Reply-To: <71e3bf37-5289-422b-7b04-de2d4e60ce9c-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> Content-Language: en-US List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: "amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" , "Koenig, Christian" --===============1831271150== Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_CY4PR12MB16874C114E6DE1B2DA9E13E3FBD30CY4PR12MB1687namp_" --_000_CY4PR12MB16874C114E6DE1B2DA9E13E3FBD30CY4PR12MB1687namp_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Sure. Thanks. Best Regards Rex ________________________________ From: Christian K=F6nig Sent: Monday, March 12, 2018 8:54 PM To: Zhu, Rex; amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Subject: Re: [PATCH 2/4] drm/amdgpu: Plus NULL function pointer check Am 12.03.2018 um 13:34 schrieb Rex Zhu: > Change-Id: Ifd6553646e7468bc935504075816074373e1d58d > Signed-off-by: Rex Zhu > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 12 +++++++----- > 1 file changed, 7 insertions(+), 5 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm= /amd/amdgpu/amdgpu_device.c > index 56b2245..d60ecc5 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > @@ -1415,12 +1415,14 @@ static int amdgpu_device_ip_late_set_cg_state(str= uct amdgpu_device *adev) > if (adev->ip_blocks[i].version->type !=3D AMD_IP_BLOCK_TYP= E_UVD && > adev->ip_blocks[i].version->type !=3D AMD_IP_BLOCK_TYP= E_VCE) { > /* enable clockgating to save power */ > - r =3D adev->ip_blocks[i].version->funcs->set_clockg= ating_state((void *)adev, > + if (adev->ip_blocks[i].version->funcs->set_clockgat= ing_state) { Why not add it to the if check above? Christian. > + r =3D adev->ip_blocks[i].version->funcs->se= t_clockgating_state((void *)adev, > = AMD_CG_STATE_GATE); > - if (r) { > - DRM_ERROR("set_clockgating_state(gate) of I= P block <%s> failed %d\n", > - adev->ip_blocks[i].version->funcs= ->name, r); > - return r; > + if (r) { > + DRM_ERROR("set_clockgating_state(ga= te) of IP block <%s> failed %d\n", > + adev->ip_blocks[i].version-= >funcs->name, r); > + return r; > + } > } > } > } --_000_CY4PR12MB16874C114E6DE1B2DA9E13E3FBD30CY4PR12MB1687namp_ Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable

Sure. 

Thanks.


Best Regards

Rex




From: Christian K=F6nig <= ;ckoenig.leichtzumerken-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Sent: Monday, March 12, 2018 8:54 PM
To: Zhu, Rex; amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
Subject: Re: [PATCH 2/4] drm/amdgpu: Plus NULL function pointer chec= k
 
Am 12.03.2018 um 13:34 schrieb Rex Zhu:
> Change-Id: Ifd6553646e7468bc935504075816074373e1d58d
> Signed-off-by: Rex Zhu <Rex.Zhu-5C7GfCeVMHo@public.gmane.org>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 12 ++= +++++-----
>   1 file changed, 7 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/= drm/amd/amdgpu/amdgpu_device.c
> index 56b2245..d60ecc5 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> @@ -1415,12 +1415,14 @@ static int amdgpu_device_ip_late_set_cg_st= ate(struct amdgpu_device *adev)
>            = ;    if (adev->ip_blocks[i].version->type !=3D AMD_IP_= BLOCK_TYPE_UVD &&
>            = ;        adev->ip_blocks[i].version-&= gt;type !=3D AMD_IP_BLOCK_TYPE_VCE) {
>            = ;            /* enab= le clockgating to save power */
> -           &nb= sp;         r =3D adev->ip_block= s[i].version->funcs->set_clockgating_state((void *)adev,
> +           = ;          if (adev->ip_blo= cks[i].version->funcs->set_clockgating_state) {

Why not add it to the if check above?

Christian.

> +           = ;            &n= bsp;     r =3D adev->ip_blocks[i].version->funcs-= >set_clockgating_state((void *)adev,
>            = ;            &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp;          AMD_CG_STATE_GAT= E);
> -           &nb= sp;         if (r) {
> -           &nb= sp;            =      DRM_ERROR("set_clockgating_state(gate) of IP = block <%s> failed %d\n",
> -           &nb= sp;            =             &nb= sp;  adev->ip_blocks[i].version->funcs->name, r);
> -           &nb= sp;            =      return r;
> +           = ;            &n= bsp;     if (r) {
> +           = ;            &n= bsp;            = ; DRM_ERROR("set_clockgating_state(gate) of IP block <%s> failed= %d\n",
> +           = ;            &n= bsp;            = ;         adev->ip_blocks[i].ver= sion->funcs->name, r);
> +           = ;            &n= bsp;            = ; return r;
> +           = ;            &n= bsp;     }
>            = ;            }
>            = ;    }
>        }

--_000_CY4PR12MB16874C114E6DE1B2DA9E13E3FBD30CY4PR12MB1687namp_-- --===============1831271150== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KYW1kLWdmeCBt YWlsaW5nIGxpc3QKYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4Cg== --===============1831271150==--