On the error path, assign -ENOMEM to ret when memory allocation of
"dev->prev_data" fails.
Fixes: e70961505808 ("platform/x86/amd/pmf: Fixup error handling for amd_pmf_init_smart_pc()")
Signed-off-by: Harshit Mogalapalli <[email protected]>
---
This is based on static analysis with smatch, only compile tested
---
drivers/platform/x86/amd/pmf/tee-if.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/platform/x86/amd/pmf/tee-if.c b/drivers/platform/x86/amd/pmf/tee-if.c
index 8527dca9cf56..dcbe8f85e122 100644
--- a/drivers/platform/x86/amd/pmf/tee-if.c
+++ b/drivers/platform/x86/amd/pmf/tee-if.c
@@ -458,8 +458,10 @@ int amd_pmf_init_smart_pc(struct amd_pmf_dev *dev)
amd_pmf_hex_dump_pb(dev);
dev->prev_data = kzalloc(sizeof(*dev->prev_data), GFP_KERNEL);
- if (!dev->prev_data)
+ if (!dev->prev_data) {
+ ret = -ENOMEM;
goto error;
+ }
ret = amd_pmf_start_policy_engine(dev);
if (ret)
--
2.39.3
On Mon, 26 Feb 2024, Harshit Mogalapalli wrote:
> On the error path, assign -ENOMEM to ret when memory allocation of
> "dev->prev_data" fails.
>
> Fixes: e70961505808 ("platform/x86/amd/pmf: Fixup error handling for amd_pmf_init_smart_pc()")
> Signed-off-by: Harshit Mogalapalli <[email protected]>
> ---
> This is based on static analysis with smatch, only compile tested
> ---
> drivers/platform/x86/amd/pmf/tee-if.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/platform/x86/amd/pmf/tee-if.c b/drivers/platform/x86/amd/pmf/tee-if.c
> index 8527dca9cf56..dcbe8f85e122 100644
> --- a/drivers/platform/x86/amd/pmf/tee-if.c
> +++ b/drivers/platform/x86/amd/pmf/tee-if.c
> @@ -458,8 +458,10 @@ int amd_pmf_init_smart_pc(struct amd_pmf_dev *dev)
> amd_pmf_hex_dump_pb(dev);
>
> dev->prev_data = kzalloc(sizeof(*dev->prev_data), GFP_KERNEL);
> - if (!dev->prev_data)
> + if (!dev->prev_data) {
> + ret = -ENOMEM;
> goto error;
> + }
>
> ret = amd_pmf_start_policy_engine(dev);
> if (ret)
>
Reviewed-by: Ilpo J?rvinen <[email protected]>
--
i.
On 2/26/2024 08:53, Ilpo Järvinen wrote:
> On Mon, 26 Feb 2024, Harshit Mogalapalli wrote:
>
>> On the error path, assign -ENOMEM to ret when memory allocation of
>> "dev->prev_data" fails.
>>
>> Fixes: e70961505808 ("platform/x86/amd/pmf: Fixup error handling for amd_pmf_init_smart_pc()")
>> Signed-off-by: Harshit Mogalapalli <[email protected]>
>> ---
>> This is based on static analysis with smatch, only compile tested
>> ---
>> drivers/platform/x86/amd/pmf/tee-if.c | 4 +++-
>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/platform/x86/amd/pmf/tee-if.c b/drivers/platform/x86/amd/pmf/tee-if.c
>> index 8527dca9cf56..dcbe8f85e122 100644
>> --- a/drivers/platform/x86/amd/pmf/tee-if.c
>> +++ b/drivers/platform/x86/amd/pmf/tee-if.c
>> @@ -458,8 +458,10 @@ int amd_pmf_init_smart_pc(struct amd_pmf_dev *dev)
>> amd_pmf_hex_dump_pb(dev);
>>
>> dev->prev_data = kzalloc(sizeof(*dev->prev_data), GFP_KERNEL);
>> - if (!dev->prev_data)
>> + if (!dev->prev_data) {
>> + ret = -ENOMEM;
>> goto error;
>> + }
>>
>> ret = amd_pmf_start_policy_engine(dev);
>> if (ret)
>>
>
> Reviewed-by: Ilpo Järvinen <[email protected]>
>
Thanks for the patch!
Reviewed-by: Mario Limonciello <[email protected]>
Hi,
On 2/26/24 15:40, Harshit Mogalapalli wrote:
> On the error path, assign -ENOMEM to ret when memory allocation of
> "dev->prev_data" fails.
>
> Fixes: e70961505808 ("platform/x86/amd/pmf: Fixup error handling for amd_pmf_init_smart_pc()")
> Signed-off-by: Harshit Mogalapalli <[email protected]>
Thank you for your patch/series, I've applied this patch
(series) to my review-hans branch:
https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=review-hans
Note it will show up in the pdx86 review-hans branch once I've
pushed my local branch there, which might take a while.
I will include this patch in my next fixes pull-req to Linus
for the current kernel development cycle.
Regards,
Hans
> ---
> This is based on static analysis with smatch, only compile tested
> ---
> drivers/platform/x86/amd/pmf/tee-if.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/platform/x86/amd/pmf/tee-if.c b/drivers/platform/x86/amd/pmf/tee-if.c
> index 8527dca9cf56..dcbe8f85e122 100644
> --- a/drivers/platform/x86/amd/pmf/tee-if.c
> +++ b/drivers/platform/x86/amd/pmf/tee-if.c
> @@ -458,8 +458,10 @@ int amd_pmf_init_smart_pc(struct amd_pmf_dev *dev)
> amd_pmf_hex_dump_pb(dev);
>
> dev->prev_data = kzalloc(sizeof(*dev->prev_data), GFP_KERNEL);
> - if (!dev->prev_data)
> + if (!dev->prev_data) {
> + ret = -ENOMEM;
> goto error;
> + }
>
> ret = amd_pmf_start_policy_engine(dev);
> if (ret)