diff mbox

pinctrl: intel: merrifield: fix dup size in probe

Message ID 20160831123050.13202-1-vincent.stehle@intel.com
State New
Headers show

Commit Message

Vincent Stehlé Aug. 31, 2016, 12:30 p.m. UTC
In function mrfld_pinctrl_probe(), when duplicating the mrfld_families
array the requested memory region length is multiplied once too many by the
number of elements in the original array. Fix this to spare some memory.

Fixes: 4e80c8f505741cbd ("pinctrl: intel: Add Intel Merrifield pin controller support")
Signed-off-by: Vincent Stehlé <vincent.stehle@intel.com>
Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Linus Walleij <linus.walleij@linaro.org>
---
 drivers/pinctrl/intel/pinctrl-merrifield.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Andy Shevchenko Aug. 31, 2016, 1:54 p.m. UTC | #1
On Wed, 2016-08-31 at 14:30 +0200, Vincent Stehlé wrote:
> In function mrfld_pinctrl_probe(), when duplicating the mrfld_families
> array the requested memory region length is multiplied once too many
> by the
> number of elements in the original array. Fix this to spare some
> memory.

Good catch!
Acked-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>

P.S. Linus, perhaps this is material for -rc5.

> 
> Fixes: 4e80c8f505741cbd ("pinctrl: intel: Add Intel Merrifield pin
> controller support")
> Signed-off-by: Vincent Stehlé <vincent.stehle@intel.com>
> Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> Cc: Linus Walleij <linus.walleij@linaro.org>
> ---
>  drivers/pinctrl/intel/pinctrl-merrifield.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/pinctrl/intel/pinctrl-merrifield.c
> b/drivers/pinctrl/intel/pinctrl-merrifield.c
> index 7fb7656..7826c7f 100644
> --- a/drivers/pinctrl/intel/pinctrl-merrifield.c
> +++ b/drivers/pinctrl/intel/pinctrl-merrifield.c
> @@ -854,7 +854,7 @@ static int mrfld_pinctrl_probe(struct
> platform_device *pdev)
>  	 */
>  	nfamilies = ARRAY_SIZE(mrfld_families),
>  	families = devm_kmemdup(&pdev->dev, mrfld_families,
> -					    nfamilies *
> sizeof(mrfld_families),
> +					    sizeof(mrfld_families),
>  					    GFP_KERNEL);
>  	if (!families)
>  		return -ENOMEM;
Linus Walleij Sept. 7, 2016, 8 p.m. UTC | #2
On Wed, Aug 31, 2016 at 2:30 PM, Vincent Stehlé
<vincent.stehle@intel.com> wrote:

> In function mrfld_pinctrl_probe(), when duplicating the mrfld_families
> array the requested memory region length is multiplied once too many by the
> number of elements in the original array. Fix this to spare some memory.
>
> Fixes: 4e80c8f505741cbd ("pinctrl: intel: Add Intel Merrifield pin controller support")
> Signed-off-by: Vincent Stehlé <vincent.stehle@intel.com>
> Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> Cc: Linus Walleij <linus.walleij@linaro.org>

Patch applied for fixes with Andy's ACK.

Yours,
Linus Walleij
--
To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/pinctrl/intel/pinctrl-merrifield.c b/drivers/pinctrl/intel/pinctrl-merrifield.c
index 7fb7656..7826c7f 100644
--- a/drivers/pinctrl/intel/pinctrl-merrifield.c
+++ b/drivers/pinctrl/intel/pinctrl-merrifield.c
@@ -854,7 +854,7 @@  static int mrfld_pinctrl_probe(struct platform_device *pdev)
 	 */
 	nfamilies = ARRAY_SIZE(mrfld_families),
 	families = devm_kmemdup(&pdev->dev, mrfld_families,
-					    nfamilies * sizeof(mrfld_families),
+					    sizeof(mrfld_families),
 					    GFP_KERNEL);
 	if (!families)
 		return -ENOMEM;