2010-08-19 02:26:44

by Axel Lin

[permalink] [raw]
Subject: [PATCH RESEND] regulator: max8998 - fix memory allocation size for max8998->rdev

We only use max8998->rdev[0] .. max8998->rdev[pdata->num_regulators-1],
max8998->rdev[pdata->num_regulators] is not used.
Thus fix the memory allocation size.

Signed-off-by: Axel Lin <[email protected]>
Acked-by: Mark Brown <[email protected]>
---
Looks like this patch is missing. So here is a resend for Liam.

drivers/regulator/max8998.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/regulator/max8998.c b/drivers/regulator/max8998.c
index ab67298..fbcb385 100644
--- a/drivers/regulator/max8998.c
+++ b/drivers/regulator/max8998.c
@@ -549,7 +549,7 @@ static __devinit int max8998_pmic_probe(struct platform_device *pdev)
if (!max8998)
return -ENOMEM;

- size = sizeof(struct regulator_dev *) * (pdata->num_regulators + 1);
+ size = sizeof(struct regulator_dev *) * pdata->num_regulators;
max8998->rdev = kzalloc(size, GFP_KERNEL);
if (!max8998->rdev) {
kfree(max8998);
@@ -583,7 +583,7 @@ static __devinit int max8998_pmic_probe(struct platform_device *pdev)

return 0;
err:
- for (i = 0; i <= max8998->num_regulators; i++)
+ for (i = 0; i < max8998->num_regulators; i++)
if (rdev[i])
regulator_unregister(rdev[i]);

@@ -599,7 +599,7 @@ static int __devexit max8998_pmic_remove(struct platform_device *pdev)
struct regulator_dev **rdev = max8998->rdev;
int i;

- for (i = 0; i <= max8998->num_regulators; i++)
+ for (i = 0; i < max8998->num_regulators; i++)
if (rdev[i])
regulator_unregister(rdev[i]);

--
1.7.2



2010-08-19 02:31:03

by Kyungmin Park

[permalink] [raw]
Subject: Re: [PATCH RESEND] regulator: max8998 - fix memory allocation size for max8998->rdev

Acked-by: Kyungmin Park <[email protected]>

On Thu, Aug 19, 2010 at 11:29 AM, Axel Lin <[email protected]> wrote:
> We only use max8998->rdev[0] .. max8998->rdev[pdata->num_regulators-1],
> max8998->rdev[pdata->num_regulators] is not used.
> Thus fix the memory allocation size.
>
> Signed-off-by: Axel Lin <[email protected]>
> Acked-by: Mark Brown <[email protected]>
> ---
> Looks like this patch is missing. So here is a resend for Liam.
>
> ?drivers/regulator/max8998.c | ? ?6 +++---
> ?1 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/regulator/max8998.c b/drivers/regulator/max8998.c
> index ab67298..fbcb385 100644
> --- a/drivers/regulator/max8998.c
> +++ b/drivers/regulator/max8998.c
> @@ -549,7 +549,7 @@ static __devinit int max8998_pmic_probe(struct platform_device *pdev)
> ? ? ? ?if (!max8998)
> ? ? ? ? ? ? ? ?return -ENOMEM;
>
> - ? ? ? size = sizeof(struct regulator_dev *) * (pdata->num_regulators + 1);
> + ? ? ? size = sizeof(struct regulator_dev *) * pdata->num_regulators;
> ? ? ? ?max8998->rdev = kzalloc(size, GFP_KERNEL);
> ? ? ? ?if (!max8998->rdev) {
> ? ? ? ? ? ? ? ?kfree(max8998);
> @@ -583,7 +583,7 @@ static __devinit int max8998_pmic_probe(struct platform_device *pdev)
>
> ? ? ? ?return 0;
> ?err:
> - ? ? ? for (i = 0; i <= max8998->num_regulators; i++)
> + ? ? ? for (i = 0; i < max8998->num_regulators; i++)
> ? ? ? ? ? ? ? ?if (rdev[i])
> ? ? ? ? ? ? ? ? ? ? ? ?regulator_unregister(rdev[i]);
>
> @@ -599,7 +599,7 @@ static int __devexit max8998_pmic_remove(struct platform_device *pdev)
> ? ? ? ?struct regulator_dev **rdev = max8998->rdev;
> ? ? ? ?int i;
>
> - ? ? ? for (i = 0; i <= max8998->num_regulators; i++)
> + ? ? ? for (i = 0; i < max8998->num_regulators; i++)
> ? ? ? ? ? ? ? ?if (rdev[i])
> ? ? ? ? ? ? ? ? ? ? ? ?regulator_unregister(rdev[i]);
>
> --
> 1.7.2
>
>
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at ?http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at ?http://www.tux.org/lkml/
>

2010-08-20 09:27:40

by Liam Girdwood

[permalink] [raw]
Subject: Re: [PATCH RESEND] regulator: max8998 - fix memory allocation size for max8998->rdev

On Thu, 2010-08-19 at 10:29 +0800, Axel Lin wrote:
> We only use max8998->rdev[0] .. max8998->rdev[pdata->num_regulators-1],
> max8998->rdev[pdata->num_regulators] is not used.
> Thus fix the memory allocation size.
>
> Signed-off-by: Axel Lin <[email protected]>
> Acked-by: Mark Brown <[email protected]>

Applied.

Thanks

Liam
--
Freelance Developer, SlimLogic Ltd
ASoC and Voltage Regulator Maintainer.
http://www.slimlogic.co.uk