Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1382994 > unrolled thread

[PATCH v2] pinctrl-exynos5440: Use off-stack memory for pinctrl_gpio_range

Started byAndrew Jeffery <andrew@aj.id.au>
First post2016-04-20 04:00 +0200
Last post2016-04-26 16:00 +0200
Articles 5 — 4 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH v2] pinctrl-exynos5440: Use off-stack memory for pinctrl_gpio_range Andrew Jeffery <andrew@aj.id.au> - 2016-04-20 04:00 +0200
    Re: [PATCH v2] pinctrl-exynos5440: Use off-stack memory for  pinctrl_gpio_range Krzysztof Kozlowski <k.kozlowski@samsung.com> - 2016-04-20 09:00 +0200
      Re: [PATCH v2] pinctrl-exynos5440: Use off-stack memory for  pinctrl_gpio_range Andrew Jeffery <andrew@aj.id.au> - 2016-04-20 09:40 +0200
      Re: [PATCH v2] pinctrl-exynos5440: Use off-stack memory for pinctrl_gpio_range Tomasz Figa <tomasz.figa@gmail.com> - 2016-04-20 10:40 +0200
    Re: [PATCH v2] pinctrl-exynos5440: Use off-stack memory for pinctrl_gpio_range Linus Walleij <linus.walleij@linaro.org> - 2016-04-26 16:00 +0200

#1382994 — [PATCH v2] pinctrl-exynos5440: Use off-stack memory for pinctrl_gpio_range

FromAndrew Jeffery <andrew@aj.id.au>
Date2016-04-20 04:00 +0200
Subject[PATCH v2] pinctrl-exynos5440: Use off-stack memory for pinctrl_gpio_range
Message-ID<rpPAT-8hw-7@gated-at.bofh.it>
The range is registered into a linked list which can be referenced
throughout the lifetime of the driver. Ensure the range's memory is useful
for the same lifetime by adding it to the driver's private data structure.

The bug was introduced in the driver's initial commit, which was present in
v3.10.

Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Fixes: f0b9a7e521fa ("pinctrl: exynos5440: add pinctrl driver for Samsung EXYNOS5440 SoC")
Cc: stable@vger.kernel.org
---
Since v1:

* Add range member kerneldoc addressing Tomasz Figa's comment

This is my first contribution to the kernel, so hopefully I've followed all the
relevant documentation. If not, please let me know and point me in the right
direction!

I don't have the means to test the patch, but it compiles. Someone with
appropriate hardware should probably give it a spin. From the responses it
seems that few might have access, and given the nature of the bug it might be
the case that no-one has complained because no-one is affected - is it worth
maintaining going forward?

 drivers/pinctrl/samsung/pinctrl-exynos5440.c | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/drivers/pinctrl/samsung/pinctrl-exynos5440.c b/drivers/pinctrl/samsung/pinctrl-exynos5440.c
index 00ab63abf1d9..dbbdf652c34a 100644
--- a/drivers/pinctrl/samsung/pinctrl-exynos5440.c
+++ b/drivers/pinctrl/samsung/pinctrl-exynos5440.c
@@ -107,6 +107,7 @@ struct exynos5440_pmx_func {
  * @nr_groups: number of pin groups available.
  * @pmx_functions: list of pin functions parsed from device tree.
  * @nr_functions: number of pin functions available.
+ * @range: gpio range to register with pinctrl
  */
 struct exynos5440_pinctrl_priv_data {
 	void __iomem			*reg_base;
@@ -117,6 +118,7 @@ struct exynos5440_pinctrl_priv_data {
 	unsigned int			nr_groups;
 	const struct exynos5440_pmx_func	*pmx_functions;
 	unsigned int			nr_functions;
+	struct pinctrl_gpio_range	range;
 };
 
 /**
@@ -742,7 +744,6 @@ static int exynos5440_pinctrl_register(struct platform_device *pdev,
 	struct pinctrl_desc *ctrldesc;
 	struct pinctrl_dev *pctl_dev;
 	struct pinctrl_pin_desc *pindesc, *pdesc;
-	struct pinctrl_gpio_range grange;
 	char *pin_names;
 	int pin, ret;
 
@@ -794,12 +795,12 @@ static int exynos5440_pinctrl_register(struct platform_device *pdev,
 		return PTR_ERR(pctl_dev);
 	}
 
-	grange.name = "exynos5440-pctrl-gpio-range";
-	grange.id = 0;
-	grange.base = 0;
-	grange.npins = EXYNOS5440_MAX_PINS;
-	grange.gc = priv->gc;
-	pinctrl_add_gpio_range(pctl_dev, &grange);
+	priv->range.name = "exynos5440-pctrl-gpio-range";
+	priv->range.id = 0;
+	priv->range.base = 0;
+	priv->range.npins = EXYNOS5440_MAX_PINS;
+	priv->range.gc = priv->gc;
+	pinctrl_add_gpio_range(pctl_dev, &priv->range);
 	return 0;
 }
 
-- 
2.5.0

[toc] | [next] | [standalone]


#1383087 — Re: [PATCH v2] pinctrl-exynos5440: Use off-stack memory for pinctrl_gpio_range

FromKrzysztof Kozlowski <k.kozlowski@samsung.com>
Date2016-04-20 09:00 +0200
SubjectRe: [PATCH v2] pinctrl-exynos5440: Use off-stack memory for pinctrl_gpio_range
Message-ID<rpUhc-3vS-27@gated-at.bofh.it>
In reply to#1382994
On 04/20/2016 03:54 AM, Andrew Jeffery wrote:
> The range is registered into a linked list which can be referenced
> throughout the lifetime of the driver. Ensure the range's memory is useful
> for the same lifetime by adding it to the driver's private data structure.
> 
> The bug was introduced in the driver's initial commit, which was present in
> v3.10.
> 
> Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
> Fixes: f0b9a7e521fa ("pinctrl: exynos5440: add pinctrl driver for Samsung EXYNOS5440 SoC")
> Cc: stable@vger.kernel.org
> ---
> Since v1:
> 
> * Add range member kerneldoc addressing Tomasz Figa's comment
> 
> This is my first contribution to the kernel, so hopefully I've followed all the
> relevant documentation. If not, please let me know and point me in the right
> direction!
> 
> I don't have the means to test the patch, but it compiles. Someone with
> appropriate hardware should probably give it a spin. From the responses it
> seems that few might have access, and given the nature of the bug it might be
> the case that no-one has complained because no-one is affected - is it worth
> maintaining going forward?
> 
>  drivers/pinctrl/samsung/pinctrl-exynos5440.c | 15 ++++++++-------
>  1 file changed, 8 insertions(+), 7 deletions(-)

Thank you for your contribution. You already received positive feedback
on v1 of this patch: Tomasz acked it ("acked-by") and I reviewed it
("reviewed-by"). These are called "tags".

When you resubmit patches (unless there is a significant change in the
patch) please always put accumulated tags after existing tags. Usually
after signed-off-by, in this case after Cc-stable, so this would look like:

Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Fixes: f0b9a7e521fa ("pinctrl: exynos5440: add pinctrl driver for
Samsung EXYNOS5440 SoC")
Cc: stable@vger.kernel.org
Acked-by: Tomasz Figa <tomasz.figa@gmail.com>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>

Best regards,
Krzysztof

[toc] | [prev] | [next] | [standalone]


#1383111 — Re: [PATCH v2] pinctrl-exynos5440: Use off-stack memory for pinctrl_gpio_range

FromAndrew Jeffery <andrew@aj.id.au>
Date2016-04-20 09:40 +0200
SubjectRe: [PATCH v2] pinctrl-exynos5440: Use off-stack memory for pinctrl_gpio_range
Message-ID<rpUTT-43d-7@gated-at.bofh.it>
In reply to#1383087
On Wed, 2016-04-20 at 08:56 +0200, Krzysztof Kozlowski wrote:
> When you resubmit patches (unless there is a significant change in the
> patch) please always put accumulated tags after existing tags.

Okay, I wasn't sure about that. Thanks for the clarification and I'll
do so in the future.

Andrew

[toc] | [prev] | [next] | [standalone]


#1383158

FromTomasz Figa <tomasz.figa@gmail.com>
Date2016-04-20 10:40 +0200
Message-ID<rpVPY-4Ta-17@gated-at.bofh.it>
In reply to#1383087
2016-04-20 15:56 GMT+09:00 Krzysztof Kozlowski <k.kozlowski@samsung.com>:
> On 04/20/2016 03:54 AM, Andrew Jeffery wrote:
>> The range is registered into a linked list which can be referenced
>> throughout the lifetime of the driver. Ensure the range's memory is useful
>> for the same lifetime by adding it to the driver's private data structure.
>>
>> The bug was introduced in the driver's initial commit, which was present in
>> v3.10.
>>
>> Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
>> Fixes: f0b9a7e521fa ("pinctrl: exynos5440: add pinctrl driver for Samsung EXYNOS5440 SoC")
>> Cc: stable@vger.kernel.org
>> ---
>> Since v1:
>>
>> * Add range member kerneldoc addressing Tomasz Figa's comment
>>
>> This is my first contribution to the kernel, so hopefully I've followed all the
>> relevant documentation. If not, please let me know and point me in the right
>> direction!
>>
>> I don't have the means to test the patch, but it compiles. Someone with
>> appropriate hardware should probably give it a spin. From the responses it
>> seems that few might have access, and given the nature of the bug it might be
>> the case that no-one has complained because no-one is affected - is it worth
>> maintaining going forward?
>>
>>  drivers/pinctrl/samsung/pinctrl-exynos5440.c | 15 ++++++++-------
>>  1 file changed, 8 insertions(+), 7 deletions(-)
>
> Thank you for your contribution. You already received positive feedback
> on v1 of this patch: Tomasz acked it ("acked-by") and I reviewed it
> ("reviewed-by"). These are called "tags".
>
> When you resubmit patches (unless there is a significant change in the
> patch) please always put accumulated tags after existing tags. Usually
> after signed-off-by, in this case after Cc-stable, so this would look like:
>
> Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
> Fixes: f0b9a7e521fa ("pinctrl: exynos5440: add pinctrl driver for
> Samsung EXYNOS5440 SoC")
> Cc: stable@vger.kernel.org
> Acked-by: Tomasz Figa <tomasz.figa@gmail.com>
> Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>

In any case, I think this is ready for applying with the tags above. Thanks.

Best regards,
Tomasz

[toc] | [prev] | [next] | [standalone]


#1387500

FromLinus Walleij <linus.walleij@linaro.org>
Date2016-04-26 16:00 +0200
Message-ID<rsbGX-j1-9@gated-at.bofh.it>
In reply to#1382994
On Wed, Apr 20, 2016 at 3:54 AM, Andrew Jeffery <andrew@aj.id.au> wrote:

> The range is registered into a linked list which can be referenced
> throughout the lifetime of the driver. Ensure the range's memory is useful
> for the same lifetime by adding it to the driver's private data structure.
>
> The bug was introduced in the driver's initial commit, which was present in
> v3.10.
>
> Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
> Fixes: f0b9a7e521fa ("pinctrl: exynos5440: add pinctrl driver for Samsung EXYNOS5440 SoC")
> Cc: stable@vger.kernel.org
> ---
> Since v1:
>
> * Add range member kerneldoc addressing Tomasz Figa's comment

Patch applied with the ACKs.

Yours,
Linus Walleij

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web