PM / devfreq: fix indentation in devfreq_add_device()
PATCH 1/3 PM / devfreq: fix indentation in devfreq_add_device()
To beautify the code format.
--- drivers/devfreq/devfreq.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-)
drivers/devfreq/devfreq.c +8 -9
@@ -683,16 +683,15 @@ struct devfreq *devfreq_add_device(struct device *dev, goto err_out; } - devfreq->trans_table = -devm_kzalloc (&devfreq->dev, -array3_size (sizeof (unsigned int ), - devfreq->profile->max_state, - devfreq->profile->max_state), -GFP_KERNEL ); + devfreq->trans_table =devm_kzalloc (&devfreq->dev, +array3_size (sizeof (unsigned int ), + devfreq->profile->max_state, + devfreq->profile->max_state), +GFP_KERNEL ); devfreq->time_in_state =devm_kcalloc (&devfreq->dev, - devfreq->profile->max_state, -sizeof (unsigned long ), -GFP_KERNEL ); + devfreq->profile->max_state, +sizeof (unsigned long ), +GFP_KERNEL ); devfreq->last_stat_updated = jiffies;srcu_init_notifier_head (&devfreq->transition_notifier_list);
Signature · 1 line
2.17.0
PATCH 2/3 PM / devfreq: fix missing check of return value in devfreq_add_device()
devm_kzalloc() could fail, so insert a check of its return value. And if it fails, returns -ENOMEM.
--- drivers/devfreq/devfreq.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-)
drivers/devfreq/devfreq.c +13 -1
@@ -688,10 +688,22 @@ struct devfreq *devfreq_add_device(struct device *dev, devfreq->profile->max_state, devfreq->profile->max_state), GFP_KERNEL); +if (!devfreq->trans_table) { +mutex_unlock (&devfreq->lock); + err = -ENOMEM ; + goto err_devfreq; + } + devfreq->time_in_state =devm_kcalloc (&devfreq->dev, devfreq->profile->max_state,sizeof (unsigned long ),GFP_KERNEL ); +if (!devfreq->time_in_state) { +mutex_unlock (&devfreq->lock); + err = -ENOMEM ; + goto err_devfreq; + } + devfreq->last_stat_updated = jiffies;srcu_init_notifier_head (&devfreq->transition_notifier_list);
@@ -725,7 +737,7 @@ struct devfreq *devfreq_add_device(struct device *dev, err_init:mutex_unlock (&devfreq_list_lock); - +err_devfreq:devfreq_remove_device (devfreq); devfreq =NULL ; err_dev:
Signature · 1 line
2.17.0
RE: [PATCH 2/3] PM / devfreq: fix missing check of return value in devfreq_add_device()
drivers/devfreq/devfreq.c
Quoted 12 lines
devm_kzalloc()could fail, so insert a check of its return value. And if it fails, returns-ENOMEM.Signed-off-by Yangtao Li <[email protected]>---
drivers/devfreq/devfreq.c| 14 +++++++++++++-1 file changed, 13 insertions(+), 1 deletion(-)drivers/devfreq/devfreq.c +0
-0
PATCH 3/3 PM / devfreq: fix mem leak in devfreq_add_device()
In reply to Yangtao Li'devfreq' is malloced in devfreq_add_device() and should be freed in the error handling cases, otherwise it will cause memory leak.
--- drivers/devfreq/devfreq.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/devfreq/devfreq.c +1 -1
@@ -651,7 +651,7 @@ struct devfreq *devfreq_add_device(struct device *dev,mutex_unlock (&devfreq->lock); err =set_freq_table (devfreq);if (err <0 ) - goto err_out; + goto err_dev;mutex_lock (&devfreq->lock); }
Signature · 1 line
2.17.0
RE: [PATCH 3/3] PM / devfreq: fix mem leak in devfreq_add_device()
Quoted 4 lines
'devfreq' is malloced in
devfreq_add_device()and should be freed in the error handling cases, otherwise it will cause memory leak.Signed-off-by Yangtao Li <[email protected]>
Quoted 17 lines
---
drivers/devfreq/devfreq.c| 2 +-1 file changed, 1 insertion(+), 1 deletion(-)drivers/devfreq/devfreq.c +1
-1@@ -651,7 +651,7 @@ struct devfreq *devfreq_add_device(struct device *dev,mutex_unlock (&devfreq->lock); err =set_freq_table (devfreq);if (err <0 ) - goto err_out; + goto err_dev;mutex_lock (&devfreq->lock); }
Re: [PATCH 3/3] PM / devfreq: fix mem leak in devfreq_add_device()
In reply to Yangtao LiHi,
Quoted 14 lines · Yangtao Li
'devfreq' is malloced in
devfreq_add_device()and should be freed in the error handling cases, otherwise it will cause memory leak.Signed-off-by Yangtao Li <[email protected]>--- drivers/devfreq/devfreq.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)drivers/devfreq/devfreq.c +0
-0
drivers/devfreq/devfreq.c struct devfreq *devfreq_add_device(struct device *dev, · line 657
Quoted 8 lines
drivers/devfreq/devfreq.c +1
-1@@ -651,7 +651,7 @@ struct devfreq *devfreq_add_device(struct device *dev,mutex_unlock (&devfreq->lock); err =set_freq_table (devfreq);if (err <0 ) - goto err_out; + goto err_dev;mutex_lock (&devfreq->lock); }
Signature · 3 lines
Best Regards, Chanwoo Choi Samsung Electronics
Hi,
Quoted 27 lines · Yangtao Li
To beautify the code format.
Signed-off-by Yangtao Li <[email protected]>--- drivers/devfreq/devfreq.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-)drivers/devfreq/devfreq.c +5
-6@@ -683,16 +683,15 @@ struct devfreq *devfreq_add_device(struct device *dev, goto err_out; } - devfreq->trans_table = -devm_kzalloc (&devfreq->dev, -array3_size (sizeof (unsigned int ), - devfreq->profile->max_state, - devfreq->profile->max_state), -GFP_KERNEL ); + devfreq->trans_table =devm_kzalloc (&devfreq->dev, +array3_size (sizeof (unsigned int ), + devfreq->profile->max_state, + devfreq->profile->max_state), +GFP_KERNEL );
drivers/devfreq/devfreq.c struct devfreq *devfreq_add_device(struct device *dev, · line 697
Quoted 10 lines
drivers/devfreq/devfreq.c +3
-3devfreq->time_in_state =devm_kcalloc (&devfreq->dev, - devfreq->profile->max_state, -sizeof (unsigned long ), -GFP_KERNEL ); + devfreq->profile->max_state, +sizeof (unsigned long ), +GFP_KERNEL ); devfreq->last_stat_updated = jiffies;srcu_init_notifier_head (&devfreq->transition_notifier_list);
Signature · 3 lines
Best Regards, Chanwoo Choi Samsung Electronics
Quoted 2 lines · Chanwoo Choi
Quoted 1 line · Yangtao Li
To beautify the code format.
I believe half of the changes are actually _less_ beautiful.
Quoted 1 line
drivers/devfreq/devfreq.c
Quoted 1 line
drivers/devfreq/devfreq.c +0
-0
[]
Quoted 4 lines
Quoted 4 lines
drivers/devfreq/devfreq.c +0
-0@@ -683,16 +683,15 @@ struct devfreq *devfreq_add_device(struct device *dev, goto err_out; }
Quoted 11 lines
drivers/devfreq/devfreq.c struct devfreq *devfreq_add_device(struct device *dev, · line 690
Quoted 11 lines
drivers/devfreq/devfreq.c +5
-6- devfreq->trans_table = -devm_kzalloc (&devfreq->dev, -array3_size (sizeof (unsigned int ), - devfreq->profile->max_state, - devfreq->profile->max_state), -GFP_KERNEL ); + devfreq->trans_table =devm_kzalloc (&devfreq->dev, +array3_size (sizeof (unsigned int ), + devfreq->profile->max_state, + devfreq->profile->max_state), +GFP_KERNEL );
I think this bit is worse because the array3_size arguments are no longer aligned.
Quoted 7 lines
drivers/devfreq/devfreq.c struct devfreq *devfreq_add_device(struct device *dev, · line 694
Quoted 7 lines
drivers/devfreq/devfreq.c +3
-3devfreq->time_in_state =devm_kcalloc (&devfreq->dev, - devfreq->profile->max_state, -sizeof (unsigned long ), -GFP_KERNEL ); + devfreq->profile->max_state, +sizeof (unsigned long ), +GFP_KERNEL );
and this bit is better.