2008-08-12 20:40:25

by Dmitry Baryshkov

[permalink] [raw]
Subject: [PATCH] Make gpiochip label const

Mark gpiochip label as a const char pointer.

Signed-off-by: Dmitry Baryshkov <[email protected]>
Cc: David Brownell <[email protected]>
---
include/asm-generic/gpio.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/include/asm-generic/gpio.h b/include/asm-generic/gpio.h
index 6be061d..8ab874a 100644
--- a/include/asm-generic/gpio.h
+++ b/include/asm-generic/gpio.h
@@ -58,7 +58,7 @@ struct module;
* is calculated by subtracting @base from the gpio number.
*/
struct gpio_chip {
- char *label;
+ const char *label;
struct module *owner;

int (*direction_input)(struct gpio_chip *chip,
--
1.5.6.3


2008-08-12 22:00:56

by David Brownell

[permalink] [raw]
Subject: Re: [PATCH] Make gpiochip label const

> From [email protected] Tue Aug 12 13:54:29 2008
> From: Dmitry Baryshkov <[email protected]>
> To: [email protected]
> Cc: Dmitry Baryshkov <[email protected]>,
> David Brownell <[email protected]>
> Subject: [PATCH] Make gpiochip label const
> Date: Wed, 13 Aug 2008 00:39:48 +0400
>
> Mark gpiochip label as a const char pointer.
>
> Signed-off-by: Dmitry Baryshkov <[email protected]>
> Cc: David Brownell <[email protected]>

Acked-By: David Brownell <[email protected]>

> ---
> include/asm-generic/gpio.h | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/include/asm-generic/gpio.h b/include/asm-generic/gpio.h
> index 6be061d..8ab874a 100644
> --- a/include/asm-generic/gpio.h
> +++ b/include/asm-generic/gpio.h
> @@ -58,7 +58,7 @@ struct module;
> * is calculated by subtracting @base from the gpio number.
> */
> struct gpio_chip {
> - char *label;
> + const char *label;
> struct module *owner;
>
> int (*direction_input)(struct gpio_chip *chip,
> --
> 1.5.6.3
>

2008-08-17 19:02:17

by Dmitry Baryshkov

[permalink] [raw]
Subject: Re: [PATCH] Make gpiochip label const

On Tue, Aug 12, 2008 at 03:06:19PM -0700, David Brownell wrote:
> > From [email protected] Tue Aug 12 13:54:29 2008
> > From: Dmitry Baryshkov <[email protected]>
> > To: [email protected]
> > Cc: Dmitry Baryshkov <[email protected]>,
> > David Brownell <[email protected]>
> > Subject: [PATCH] Make gpiochip label const
> > Date: Wed, 13 Aug 2008 00:39:48 +0400
> >
> > Mark gpiochip label as a const char pointer.
> >
> > Signed-off-by: Dmitry Baryshkov <[email protected]>
> > Cc: David Brownell <[email protected]>
>
> Acked-By: David Brownell <[email protected]>
>

Sorry to disturb, but will this make into 2.6.27-rc? Thanks.

--
With best wishes
Dmitry

2008-08-19 08:43:28

by Andrew Morton

[permalink] [raw]
Subject: Re: [PATCH] Make gpiochip label const

On Sun, 17 Aug 2008 23:00:35 +0400 Dmitry Baryshkov <[email protected]> wrote:

> On Tue, Aug 12, 2008 at 03:06:19PM -0700, David Brownell wrote:
> > > From [email protected] Tue Aug 12 13:54:29 2008
> > > From: Dmitry Baryshkov <[email protected]>
> > > To: [email protected]
> > > Cc: Dmitry Baryshkov <[email protected]>,
> > > David Brownell <[email protected]>
> > > Subject: [PATCH] Make gpiochip label const
> > > Date: Wed, 13 Aug 2008 00:39:48 +0400
> > >
> > > Mark gpiochip label as a const char pointer.
> > >
> > > Signed-off-by: Dmitry Baryshkov <[email protected]>
> > > Cc: David Brownell <[email protected]>
> >
> > Acked-By: David Brownell <[email protected]>
> >
>
> Sorry to disturb, but will this make into 2.6.27-rc? Thanks.
>

Ordinarily it would not. Is there some reason why you think it should?

2008-08-19 11:14:00

by Dmitry Baryshkov

[permalink] [raw]
Subject: Re: [PATCH] Make gpiochip label const

2008/8/19 Andrew Morton <[email protected]>:
> On Sun, 17 Aug 2008 23:00:35 +0400 Dmitry Baryshkov <[email protected]> wrote:
>
>> On Tue, Aug 12, 2008 at 03:06:19PM -0700, David Brownell wrote:
>> > > From [email protected] Tue Aug 12 13:54:29 2008
>> > > From: Dmitry Baryshkov <[email protected]>
>> > > To: [email protected]
>> > > Cc: Dmitry Baryshkov <[email protected]>,
>> > > David Brownell <[email protected]>
>> > > Subject: [PATCH] Make gpiochip label const
>> > > Date: Wed, 13 Aug 2008 00:39:48 +0400
>> > >
>> > > Mark gpiochip label as a const char pointer.
>> > >
>> > > Signed-off-by: Dmitry Baryshkov <[email protected]>
>> > > Cc: David Brownell <[email protected]>
>> >
>> > Acked-By: David Brownell <[email protected]>
>> >
>>
>> Sorry to disturb, but will this make into 2.6.27-rc? Thanks.
>>
>
> Ordinarily it would not. Is there some reason why you think it should?
>

It fixes lots of warnings (one per each instance of code filling the gpio chip)
and is pretty much small to honour inclusion IMO

--
With best wishes
Dmitry

2008-08-19 18:28:50

by Andrew Morton

[permalink] [raw]
Subject: Re: [PATCH] Make gpiochip label const

On Tue, 19 Aug 2008 15:13:47 +0400
Dmitry <[email protected]> wrote:

> 2008/8/19 Andrew Morton <[email protected]>:
> > On Sun, 17 Aug 2008 23:00:35 +0400 Dmitry Baryshkov <[email protected]> wrote:
> >
> >> On Tue, Aug 12, 2008 at 03:06:19PM -0700, David Brownell wrote:
> >> > > From [email protected] Tue Aug 12 13:54:29 2008
> >> > > From: Dmitry Baryshkov <[email protected]>
> >> > > To: [email protected]
> >> > > Cc: Dmitry Baryshkov <[email protected]>,
> >> > > David Brownell <[email protected]>
> >> > > Subject: [PATCH] Make gpiochip label const
> >> > > Date: Wed, 13 Aug 2008 00:39:48 +0400
> >> > >
> >> > > Mark gpiochip label as a const char pointer.
> >> > >
> >> > > Signed-off-by: Dmitry Baryshkov <[email protected]>
> >> > > Cc: David Brownell <[email protected]>
> >> >
> >> > Acked-By: David Brownell <[email protected]>
> >> >
> >>
> >> Sorry to disturb, but will this make into 2.6.27-rc? Thanks.
> >>
> >
> > Ordinarily it would not. Is there some reason why you think it should?
> >
>
> It fixes lots of warnings (one per each instance of code filling the gpio chip)


That should have been in the changelog!

When fixing warnings or compilations errors, the compiler output should
also be in the changelog.

I don't recall seeing such warnings and I cannot make them happen with
drivers/gpio/gpiolib.c or with drivers/gpio/max732x.c or with
drivers/gpio/pca953x.c. So we still don't know what this patch
does :(

> and is pretty much small to honour inclusion IMO

Well sure it's small. But converting things to `const' carries a
fairly high risk of adding new warnings or breaking the build.

2008-08-20 08:40:00

by Dmitry Baryshkov

[permalink] [raw]
Subject: Re: [PATCH] Make gpiochip label const

On Tue, Aug 19, 2008 at 11:28:28AM -0700, Andrew Morton wrote:
> On Tue, 19 Aug 2008 15:13:47 +0400
> Dmitry <[email protected]> wrote:
>
> > 2008/8/19 Andrew Morton <[email protected]>:
> > > On Sun, 17 Aug 2008 23:00:35 +0400 Dmitry Baryshkov <[email protected]> wrote:
> > >
> > >> On Tue, Aug 12, 2008 at 03:06:19PM -0700, David Brownell wrote:
> > >> > > From [email protected] Tue Aug 12 13:54:29 2008
> > >> > > From: Dmitry Baryshkov <[email protected]>
> > >> > > To: [email protected]
> > >> > > Cc: Dmitry Baryshkov <[email protected]>,
> > >> > > David Brownell <[email protected]>
> > >> > > Subject: [PATCH] Make gpiochip label const
> > >> > > Date: Wed, 13 Aug 2008 00:39:48 +0400
> > >> > >
> > >> > > Mark gpiochip label as a const char pointer.
> > >> > >
> > >> > > Signed-off-by: Dmitry Baryshkov <[email protected]>
> > >> > > Cc: David Brownell <[email protected]>
> > >> >
> > >> > Acked-By: David Brownell <[email protected]>
> > >> >
> > >>
> > >> Sorry to disturb, but will this make into 2.6.27-rc? Thanks.
> > >>
> > >
> > > Ordinarily it would not. Is there some reason why you think it should?
> > >
> >
> > It fixes lots of warnings (one per each instance of code filling the gpio chip)
>
>
> That should have been in the changelog!
>
> When fixing warnings or compilations errors, the compiler output should
> also be in the changelog.

Thanks for the tip. It it written somewhere?

> I don't recall seeing such warnings and I cannot make them happen with
> drivers/gpio/gpiolib.c or with drivers/gpio/max732x.c or with
> drivers/gpio/pca953x.c. So we still don't know what this patch
> does :(

Because both mentioned drivers set gpiochip->label to non-const string.
You can check arch/arm/common/scoop.c for example of driver showing
different behaviour:

CHECK /home/lumag/tosa-tree/arch/arm/common/scoop.c
/home/lumag/tosa-tree/arch/arm/common/scoop.c:250:22: warning: incorrect type in assignment (different modifiers)
/home/lumag/tosa-tree/arch/arm/common/scoop.c:250:22: expected char *label
/home/lumag/tosa-tree/arch/arm/common/scoop.c:250:22: got char const *
CC arch/arm/common/scoop.o
/home/lumag/tosa-tree/arch/arm/common/scoop.c: In function ‘scoop_probe’:
/home/lumag/tosa-tree/arch/arm/common/scoop.c:250: warning: assignment discards qualifiers from pointer target type

>
> > and is pretty much small to honour inclusion IMO
>
> Well sure it's small. But converting things to `const' carries a
> fairly high risk of adding new warnings or breaking the build.

Should we stage it into linux-next?

--
With best wishes
Dmitry

2008-08-20 15:50:55

by David Brownell

[permalink] [raw]
Subject: Re: [PATCH] Make gpiochip label const

On Wednesday 20 August 2008, Dmitry Baryshkov wrote:
> > I don't recall seeing such warnings and I cannot make them happen with
> > drivers/gpio/gpiolib.c or with drivers/gpio/max732x.c or with
> > drivers/gpio/pca953x.c. ?So we still don't know what this patch
> > does :(
>
> Because both mentioned drivers set gpiochip->label to non-const string.
> You can check arch/arm/common/scoop.c for example of driver showing
> different behaviour:

You're doing it wrong -- in a small way, not a big one. Instead of

devptr->gpio.label = dev_name(&pdev->dev);

do

devptr->gpio.label = "scoop";
devptr->gpio.dev = &pdev->dev;

No warnings generated that way, and another field is set up...

- Dave