2010-07-29 08:25:14

by Axel Lin

[permalink] [raw]
Subject: [PATCH 1/2] jz4740-adc/jz4740-hwmon: check kmalloc() result

If kmalloc() fails, exit with -ENOMEM.

Signed-off-by: Axel Lin <[email protected]>
---
This patch is against linux-next.
drivers/hwmon/jz4740-hwmon.c | 4 ++++
drivers/mfd/jz4740-adc.c | 4 ++++
2 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/drivers/hwmon/jz4740-hwmon.c b/drivers/hwmon/jz4740-hwmon.c
index 72a4335..1c8b3d9 100644
--- a/drivers/hwmon/jz4740-hwmon.c
+++ b/drivers/hwmon/jz4740-hwmon.c
@@ -107,6 +107,10 @@ static int __devinit jz4740_hwmon_probe(struct platform_device *pdev)
struct jz4740_hwmon *hwmon;

hwmon = kmalloc(sizeof(*hwmon), GFP_KERNEL);
+ if (!hwmon) {
+ dev_err(&pdev->dev, "Failed to allocate driver structure\n");
+ return -ENOMEM;
+ }

hwmon->cell = pdev->dev.platform_data;

diff --git a/drivers/mfd/jz4740-adc.c b/drivers/mfd/jz4740-adc.c
index 7a844ae..2846d24 100644
--- a/drivers/mfd/jz4740-adc.c
+++ b/drivers/mfd/jz4740-adc.c
@@ -260,6 +260,10 @@ static int __devinit jz4740_adc_probe(struct platform_device *pdev)
int irq;

adc = kmalloc(sizeof(*adc), GFP_KERNEL);
+ if (!adc) {
+ dev_err(&pdev->dev, "Failed to allocate driver structure\n");
+ return -ENOMEM;
+ }

adc->irq = platform_get_irq(pdev, 0);
if (adc->irq < 0) {
--
1.5.4.3



2010-08-01 22:41:06

by Samuel Ortiz

[permalink] [raw]
Subject: Re: [PATCH 1/2] jz4740-adc/jz4740-hwmon: check kmalloc() result

Hi Axel,

On Thu, Jul 29, 2010 at 04:25:53PM +0800, Axel Lin wrote:
> If kmalloc() fails, exit with -ENOMEM.
Could you please separate this patch in 2, as the 2 drivers live in different
trees for now ?

Cheers,
Samuel.


> Signed-off-by: Axel Lin <[email protected]>
> ---
> This patch is against linux-next.
> drivers/hwmon/jz4740-hwmon.c | 4 ++++
> drivers/mfd/jz4740-adc.c | 4 ++++
> 2 files changed, 8 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/hwmon/jz4740-hwmon.c b/drivers/hwmon/jz4740-hwmon.c
> index 72a4335..1c8b3d9 100644
> --- a/drivers/hwmon/jz4740-hwmon.c
> +++ b/drivers/hwmon/jz4740-hwmon.c
> @@ -107,6 +107,10 @@ static int __devinit jz4740_hwmon_probe(struct platform_device *pdev)
> struct jz4740_hwmon *hwmon;
>
> hwmon = kmalloc(sizeof(*hwmon), GFP_KERNEL);
> + if (!hwmon) {
> + dev_err(&pdev->dev, "Failed to allocate driver structure\n");
> + return -ENOMEM;
> + }
>
> hwmon->cell = pdev->dev.platform_data;
>
> diff --git a/drivers/mfd/jz4740-adc.c b/drivers/mfd/jz4740-adc.c
> index 7a844ae..2846d24 100644
> --- a/drivers/mfd/jz4740-adc.c
> +++ b/drivers/mfd/jz4740-adc.c
> @@ -260,6 +260,10 @@ static int __devinit jz4740_adc_probe(struct platform_device *pdev)
> int irq;
>
> adc = kmalloc(sizeof(*adc), GFP_KERNEL);
> + if (!adc) {
> + dev_err(&pdev->dev, "Failed to allocate driver structure\n");
> + return -ENOMEM;
> + }
>
> adc->irq = platform_get_irq(pdev, 0);
> if (adc->irq < 0) {
> --
> 1.5.4.3
>
>
>

--
Intel Open Source Technology Centre
http://oss.intel.com/