2017-09-11 12:37:52

by Himanshu Jha

[permalink] [raw]
Subject: [PATCH] drm/amd/powerplay: remove unnecessary call to memset

call to memset to assign 0 value immediately after allocating
memory with kzalloc is unnecesaary as kzalloc allocates the memory
filled with 0 value.

Semantic patch used to resolve this issue:

@@
expression e,e2; constant c;
statement S;
@@

e = kzalloc(e2, c);
if(e == NULL) S
- memset(e, 0, e2);

Signed-off-by: Himanshu Jha <[email protected]>
---
.../drm/amd/powerplay/hwmgr/process_pptables_v1_0.c | 20 --------------------
1 file changed, 20 deletions(-)

diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/process_pptables_v1_0.c b/drivers/gpu/drm/amd/powerplay/hwmgr/process_pptables_v1_0.c
index 84f01fd3..d1af148 100644
--- a/drivers/gpu/drm/amd/powerplay/hwmgr/process_pptables_v1_0.c
+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/process_pptables_v1_0.c
@@ -173,8 +173,6 @@ static int get_vddc_lookup_table(
if (NULL == table)
return -ENOMEM;

- memset(table, 0x00, table_size);
-
table->count = vddc_lookup_pp_tables->ucNumEntries;

for (i = 0; i < vddc_lookup_pp_tables->ucNumEntries; i++) {
@@ -335,8 +333,6 @@ static int get_valid_clk(
if (NULL == table)
return -ENOMEM;

- memset(table, 0x00, table_size);
-
table->count = (uint32_t)clk_volt_pp_table->count;

for (i = 0; i < table->count; i++) {
@@ -390,8 +386,6 @@ static int get_mclk_voltage_dependency_table(
if (NULL == mclk_table)
return -ENOMEM;

- memset(mclk_table, 0x00, table_size);
-
mclk_table->count = (uint32_t)mclk_dep_table->ucNumEntries;

for (i = 0; i < mclk_dep_table->ucNumEntries; i++) {
@@ -439,8 +433,6 @@ static int get_sclk_voltage_dependency_table(
if (NULL == sclk_table)
return -ENOMEM;

- memset(sclk_table, 0x00, table_size);
-
sclk_table->count = (uint32_t)tonga_table->ucNumEntries;

for (i = 0; i < tonga_table->ucNumEntries; i++) {
@@ -473,8 +465,6 @@ static int get_sclk_voltage_dependency_table(
if (NULL == sclk_table)
return -ENOMEM;

- memset(sclk_table, 0x00, table_size);
-
sclk_table->count = (uint32_t)polaris_table->ucNumEntries;

for (i = 0; i < polaris_table->ucNumEntries; i++) {
@@ -525,8 +515,6 @@ static int get_pcie_table(
if (pcie_table == NULL)
return -ENOMEM;

- memset(pcie_table, 0x00, table_size);
-
/*
* Make sure the number of pcie entries are less than or equal to sclk dpm levels.
* Since first PCIE entry is for ULV, #pcie has to be <= SclkLevel + 1.
@@ -567,8 +555,6 @@ static int get_pcie_table(
if (pcie_table == NULL)
return -ENOMEM;

- memset(pcie_table, 0x00, table_size);
-
/*
* Make sure the number of pcie entries are less than or equal to sclk dpm levels.
* Since first PCIE entry is for ULV, #pcie has to be <= SclkLevel + 1.
@@ -615,8 +601,6 @@ static int get_cac_tdp_table(
if (NULL == tdp_table)
return -ENOMEM;

- memset(tdp_table, 0x00, table_size);
-
hwmgr->dyn_state.cac_dtp_table = kzalloc(table_size, GFP_KERNEL);

if (NULL == hwmgr->dyn_state.cac_dtp_table) {
@@ -624,8 +608,6 @@ static int get_cac_tdp_table(
return -ENOMEM;
}

- memset(hwmgr->dyn_state.cac_dtp_table, 0x00, table_size);
-
if (table->ucRevId < 3) {
const ATOM_Tonga_PowerTune_Table *tonga_table =
(ATOM_Tonga_PowerTune_Table *)table;
@@ -725,8 +707,6 @@ static int get_mm_clock_voltage_table(
if (NULL == mm_table)
return -ENOMEM;

- memset(mm_table, 0x00, table_size);
-
mm_table->count = mm_dependency_table->ucNumEntries;

for (i = 0; i < mm_dependency_table->ucNumEntries; i++) {
--
2.7.4


2017-09-11 21:33:59

by Alex Deucher

[permalink] [raw]
Subject: Re: [PATCH] drm/amd/powerplay: remove unnecessary call to memset

On Mon, Sep 11, 2017 at 8:37 AM, Himanshu Jha
<[email protected]> wrote:
> call to memset to assign 0 value immediately after allocating
> memory with kzalloc is unnecesaary as kzalloc allocates the memory
> filled with 0 value.
>
> Semantic patch used to resolve this issue:
>
> @@
> expression e,e2; constant c;
> statement S;
> @@
>
> e = kzalloc(e2, c);
> if(e == NULL) S
> - memset(e, 0, e2);
>
> Signed-off-by: Himanshu Jha <[email protected]>

Applied.

Thanks!

Alex

> ---
> .../drm/amd/powerplay/hwmgr/process_pptables_v1_0.c | 20 --------------------
> 1 file changed, 20 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/process_pptables_v1_0.c b/drivers/gpu/drm/amd/powerplay/hwmgr/process_pptables_v1_0.c
> index 84f01fd3..d1af148 100644
> --- a/drivers/gpu/drm/amd/powerplay/hwmgr/process_pptables_v1_0.c
> +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/process_pptables_v1_0.c
> @@ -173,8 +173,6 @@ static int get_vddc_lookup_table(
> if (NULL == table)
> return -ENOMEM;
>
> - memset(table, 0x00, table_size);
> -
> table->count = vddc_lookup_pp_tables->ucNumEntries;
>
> for (i = 0; i < vddc_lookup_pp_tables->ucNumEntries; i++) {
> @@ -335,8 +333,6 @@ static int get_valid_clk(
> if (NULL == table)
> return -ENOMEM;
>
> - memset(table, 0x00, table_size);
> -
> table->count = (uint32_t)clk_volt_pp_table->count;
>
> for (i = 0; i < table->count; i++) {
> @@ -390,8 +386,6 @@ static int get_mclk_voltage_dependency_table(
> if (NULL == mclk_table)
> return -ENOMEM;
>
> - memset(mclk_table, 0x00, table_size);
> -
> mclk_table->count = (uint32_t)mclk_dep_table->ucNumEntries;
>
> for (i = 0; i < mclk_dep_table->ucNumEntries; i++) {
> @@ -439,8 +433,6 @@ static int get_sclk_voltage_dependency_table(
> if (NULL == sclk_table)
> return -ENOMEM;
>
> - memset(sclk_table, 0x00, table_size);
> -
> sclk_table->count = (uint32_t)tonga_table->ucNumEntries;
>
> for (i = 0; i < tonga_table->ucNumEntries; i++) {
> @@ -473,8 +465,6 @@ static int get_sclk_voltage_dependency_table(
> if (NULL == sclk_table)
> return -ENOMEM;
>
> - memset(sclk_table, 0x00, table_size);
> -
> sclk_table->count = (uint32_t)polaris_table->ucNumEntries;
>
> for (i = 0; i < polaris_table->ucNumEntries; i++) {
> @@ -525,8 +515,6 @@ static int get_pcie_table(
> if (pcie_table == NULL)
> return -ENOMEM;
>
> - memset(pcie_table, 0x00, table_size);
> -
> /*
> * Make sure the number of pcie entries are less than or equal to sclk dpm levels.
> * Since first PCIE entry is for ULV, #pcie has to be <= SclkLevel + 1.
> @@ -567,8 +555,6 @@ static int get_pcie_table(
> if (pcie_table == NULL)
> return -ENOMEM;
>
> - memset(pcie_table, 0x00, table_size);
> -
> /*
> * Make sure the number of pcie entries are less than or equal to sclk dpm levels.
> * Since first PCIE entry is for ULV, #pcie has to be <= SclkLevel + 1.
> @@ -615,8 +601,6 @@ static int get_cac_tdp_table(
> if (NULL == tdp_table)
> return -ENOMEM;
>
> - memset(tdp_table, 0x00, table_size);
> -
> hwmgr->dyn_state.cac_dtp_table = kzalloc(table_size, GFP_KERNEL);
>
> if (NULL == hwmgr->dyn_state.cac_dtp_table) {
> @@ -624,8 +608,6 @@ static int get_cac_tdp_table(
> return -ENOMEM;
> }
>
> - memset(hwmgr->dyn_state.cac_dtp_table, 0x00, table_size);
> -
> if (table->ucRevId < 3) {
> const ATOM_Tonga_PowerTune_Table *tonga_table =
> (ATOM_Tonga_PowerTune_Table *)table;
> @@ -725,8 +707,6 @@ static int get_mm_clock_voltage_table(
> if (NULL == mm_table)
> return -ENOMEM;
>
> - memset(mm_table, 0x00, table_size);
> -
> mm_table->count = mm_dependency_table->ucNumEntries;
>
> for (i = 0; i < mm_dependency_table->ucNumEntries; i++) {
> --
> 2.7.4
>
> _______________________________________________
> amd-gfx mailing list
> [email protected]
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx