2019-08-30 08:08:24

by Austin Kim

[permalink] [raw]
Subject: [PATCH] drm/amdgpu: Move null pointer dereference check

Null pointer dereference check should have been checked,
ahead of below routine.
struct amdgpu_device *adev = hwmgr->adev;

With this commit, it could avoid potential NULL dereference.

Signed-off-by: Austin Kim <[email protected]>
---
drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c
index 8189fe4..4728aa2 100644
--- a/drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c
+++ b/drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c
@@ -722,16 +722,17 @@ static int smu8_request_smu_load_fw(struct pp_hwmgr *hwmgr)

static int smu8_start_smu(struct pp_hwmgr *hwmgr)
{
- struct amdgpu_device *adev = hwmgr->adev;
+ struct amdgpu_device *adev;

uint32_t index = SMN_MP1_SRAM_START_ADDR +
SMU8_FIRMWARE_HEADER_LOCATION +
offsetof(struct SMU8_Firmware_Header, Version);

-
if (hwmgr == NULL || hwmgr->device == NULL)
return -EINVAL;

+ adev = hwmgr->adev;
+
cgs_write_register(hwmgr->device, mmMP0PUB_IND_INDEX, index);
hwmgr->smu_version = cgs_read_register(hwmgr->device, mmMP0PUB_IND_DATA);
pr_info("smu version %02d.%02d.%02d\n",
--
2.6.2


2019-08-30 15:12:29

by Alex Deucher

[permalink] [raw]
Subject: Re: [PATCH] drm/amdgpu: Move null pointer dereference check

On Fri, Aug 30, 2019 at 8:43 AM Austin Kim <[email protected]> wrote:
>
> Null pointer dereference check should have been checked,
> ahead of below routine.
> struct amdgpu_device *adev = hwmgr->adev;
>
> With this commit, it could avoid potential NULL dereference.
>
> Signed-off-by: Austin Kim <[email protected]>

Applied. thanks!

Alex

> ---
> drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c
> index 8189fe4..4728aa2 100644
> --- a/drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c
> +++ b/drivers/gpu/drm/amd/powerplay/smumgr/smu8_smumgr.c
> @@ -722,16 +722,17 @@ static int smu8_request_smu_load_fw(struct pp_hwmgr *hwmgr)
>
> static int smu8_start_smu(struct pp_hwmgr *hwmgr)
> {
> - struct amdgpu_device *adev = hwmgr->adev;
> + struct amdgpu_device *adev;
>
> uint32_t index = SMN_MP1_SRAM_START_ADDR +
> SMU8_FIRMWARE_HEADER_LOCATION +
> offsetof(struct SMU8_Firmware_Header, Version);
>
> -
> if (hwmgr == NULL || hwmgr->device == NULL)
> return -EINVAL;
>
> + adev = hwmgr->adev;
> +
> cgs_write_register(hwmgr->device, mmMP0PUB_IND_INDEX, index);
> hwmgr->smu_version = cgs_read_register(hwmgr->device, mmMP0PUB_IND_DATA);
> pr_info("smu version %02d.%02d.%02d\n",
> --
> 2.6.2
>
> _______________________________________________
> amd-gfx mailing list
> [email protected]
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx