Message ID | 20231123073325.16843-1-dinghao.liu@zju.edu.cn (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/amd/pm: fix a memleak in aldebaran_tables_init | expand |
Applied. Thanks! On Thu, Nov 23, 2023 at 3:08 AM Dinghao Liu <dinghao.liu@zju.edu.cn> wrote: > > When kzalloc() for smu_table->ecc_table fails, we should free > the previously allocated resources to prevent memleak. > > Fixes: edd794208555 ("drm/amd/pm: add message smu to get ecc_table v2") > Signed-off-by: Dinghao Liu <dinghao.liu@zju.edu.cn> > --- > drivers/gpu/drm/amd/pm/swsmu/smu13/aldebaran_ppt.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu13/aldebaran_ppt.c b/drivers/gpu/drm/amd/pm/swsmu/smu13/aldebaran_ppt.c > index 1a6675d70a4b..f1440869d1ce 100644 > --- a/drivers/gpu/drm/amd/pm/swsmu/smu13/aldebaran_ppt.c > +++ b/drivers/gpu/drm/amd/pm/swsmu/smu13/aldebaran_ppt.c > @@ -257,8 +257,11 @@ static int aldebaran_tables_init(struct smu_context *smu) > } > > smu_table->ecc_table = kzalloc(tables[SMU_TABLE_ECCINFO].size, GFP_KERNEL); > - if (!smu_table->ecc_table) > + if (!smu_table->ecc_table) { > + kfree(smu_table->metrics_table); > + kfree(smu_table->gpu_metrics_table); > return -ENOMEM; > + } > > return 0; > } > -- > 2.17.1 >
diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu13/aldebaran_ppt.c b/drivers/gpu/drm/amd/pm/swsmu/smu13/aldebaran_ppt.c index 1a6675d70a4b..f1440869d1ce 100644 --- a/drivers/gpu/drm/amd/pm/swsmu/smu13/aldebaran_ppt.c +++ b/drivers/gpu/drm/amd/pm/swsmu/smu13/aldebaran_ppt.c @@ -257,8 +257,11 @@ static int aldebaran_tables_init(struct smu_context *smu) } smu_table->ecc_table = kzalloc(tables[SMU_TABLE_ECCINFO].size, GFP_KERNEL); - if (!smu_table->ecc_table) + if (!smu_table->ecc_table) { + kfree(smu_table->metrics_table); + kfree(smu_table->gpu_metrics_table); return -ENOMEM; + } return 0; }
When kzalloc() for smu_table->ecc_table fails, we should free the previously allocated resources to prevent memleak. Fixes: edd794208555 ("drm/amd/pm: add message smu to get ecc_table v2") Signed-off-by: Dinghao Liu <dinghao.liu@zju.edu.cn> --- drivers/gpu/drm/amd/pm/swsmu/smu13/aldebaran_ppt.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)