Re: [PATCH] drm/msm/adreno: Add a null pointer check in zap_shader_load_mdt()

From: Markus Elfring
Date: Thu Jan 18 2024 - 03:13:50 EST


>>> kasprintf() returns a pointer to dynamically allocated memory
>>> which can be NULL upon failure. Ensure the allocation was successful
>>> by checking the pointer validity.
>> …
>>> +++ b/drivers/gpu/drm/msm/adreno/adreno_gpu.c
>>> @@ -144,6 +144,10 @@ static int zap_shader_load_mdt(struct msm_gpu *gpu, const char *fwname,
>>>           char *newname;
>>>
>>>           newname = kasprintf(GFP_KERNEL, "qcom/%s", fwname);
>>> +        if (!newname) {
>>> +            ret = -ENOMEM;
>>> +            goto out;
>>> +        }
>> …
>>
>> How do you think about to avoid the repetition of the pointer check
>> for the variable “mem_region”?
> "mem_region"? Is this a clerical error, do you mean 'newname'?

Please take another look at implementation details:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/gpu/drm/msm/adreno/adreno_gpu.c?h=v6.7#n124



>> Can the usage of other labels become more appropriate?

I propose to reconsider also the influence of the label “out” here.
https://elixir.bootlin.com/linux/v6.7/source/drivers/gpu/drm/msm/adreno/adreno_gpu.c#L167

Regards,
Markus