diff --git a/[refs] b/[refs] index 276d52bac321..73ad4e15a0f2 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: cbe10a3674ba1cfa227d0d4e990353bada85fa09 +refs/heads/master: 4fef21eaacb9d739f0120c930c78dac4f6875b9f diff --git a/trunk/drivers/regulator/mc13892-regulator.c b/trunk/drivers/regulator/mc13892-regulator.c index 46bfa4ae2afd..e8cfc99dd8f0 100644 --- a/trunk/drivers/regulator/mc13892-regulator.c +++ b/trunk/drivers/regulator/mc13892-regulator.c @@ -538,7 +538,7 @@ static int __devinit mc13892_regulator_probe(struct platform_device *pdev) if (num_regulators <= 0) return -EINVAL; - priv = kzalloc(sizeof(*priv) + + priv = devm_kzalloc(&pdev->dev, sizeof(*priv) + num_regulators * sizeof(priv->regulators[0]), GFP_KERNEL); if (!priv) @@ -615,7 +615,6 @@ static int __devinit mc13892_regulator_probe(struct platform_device *pdev) err_free: mc13xxx_unlock(mc13892); - kfree(priv); return ret; } @@ -630,7 +629,6 @@ static int __devexit mc13892_regulator_remove(struct platform_device *pdev) for (i = 0; i < priv->num_regulators; i++) regulator_unregister(priv->regulators[i]); - kfree(priv); return 0; }