The patch to make uartlite_be/uartlite_le const was well-intended but
caused a new build warning:
tty/serial/uartlite.c: In function 'ulite_request_port':
tty/serial/uartlite.c:348:21: error: assignment discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
tty/serial/uartlite.c:354:22: error: assignment discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
It would be nice to allow passing const pointers through
port->private_data, but that would be way more work, so this
reverts part of the original commit for now.
A possible alternative might be to pass a structure in the private_data
that contains a const pointer to the operations, which introduces a little
extra overhead, or we could just add a cast to a non-const pointer, I'll
leave that to the maintainer.
Signed-off-by: Arnd Bergmann <[email protected]>
Fixes: 2905697a82ea ("serial-uartlite: Constify uartlite_be/uartlite_le")
---
drivers/tty/serial/uartlite.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/tty/serial/uartlite.c b/drivers/tty/serial/uartlite.c
index c9fdfc8bf47f..1474c5755140 100644
--- a/drivers/tty/serial/uartlite.c
+++ b/drivers/tty/serial/uartlite.c
@@ -72,7 +72,7 @@ static void uartlite_outbe32(u32 val, void __iomem *addr)
iowrite32be(val, addr);
}
-static const struct uartlite_reg_ops uartlite_be = {
+static struct uartlite_reg_ops uartlite_be = {
.in = uartlite_inbe32,
.out = uartlite_outbe32,
};
@@ -87,7 +87,7 @@ static void uartlite_outle32(u32 val, void __iomem *addr)
iowrite32(val, addr);
}
-static const struct uartlite_reg_ops uartlite_le = {
+static struct uartlite_reg_ops uartlite_le = {
.in = uartlite_inle32,
.out = uartlite_outle32,
};
--
2.7.0
I've created a version 2 of this patch immediately which fixes the warning,
but somehow this stays ignored.
Please apply my second patch!
Maarten
> The patch to make uartlite_be/uartlite_le const was well-intended but
> caused a new build warning:
>
> tty/serial/uartlite.c: In function 'ulite_request_port':
> tty/serial/uartlite.c:348:21: error: assignment discards 'const' qualifier
> from pointer target type [-Werror=discarded-qualifiers]
> tty/serial/uartlite.c:354:22: error: assignment discards 'const' qualifier
> from pointer target type [-Werror=discarded-qualifiers]
>
> It would be nice to allow passing const pointers through
> port->private_data, but that would be way more work, so this
> reverts part of the original commit for now.
>
> A possible alternative might be to pass a structure in the private_data
> that contains a const pointer to the operations, which introduces a little
> extra overhead, or we could just add a cast to a non-const pointer, I'll
> leave that to the maintainer.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> Fixes: 2905697a82ea ("serial-uartlite: Constify uartlite_be/uartlite_le")
> ---
> drivers/tty/serial/uartlite.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/tty/serial/uartlite.c b/drivers/tty/serial/uartlite.c
> index c9fdfc8bf47f..1474c5755140 100644
> --- a/drivers/tty/serial/uartlite.c
> +++ b/drivers/tty/serial/uartlite.c
> @@ -72,7 +72,7 @@ static void uartlite_outbe32(u32 val, void __iomem *addr)
> iowrite32be(val, addr);
> }
>
> -static const struct uartlite_reg_ops uartlite_be = {
> +static struct uartlite_reg_ops uartlite_be = {
> .in = uartlite_inbe32,
> .out = uartlite_outbe32,
> };
> @@ -87,7 +87,7 @@ static void uartlite_outle32(u32 val, void __iomem *addr)
> iowrite32(val, addr);
> }
>
> -static const struct uartlite_reg_ops uartlite_le = {
> +static struct uartlite_reg_ops uartlite_le = {
> .in = uartlite_inle32,
> .out = uartlite_outle32,
> };
> --
> 2.7.0
>
>
On Thu, Mar 10, 2016 at 10:08:01AM +0100, Maarten Brock wrote:
> I've created a version 2 of this patch immediately which fixes the warning,
> but somehow this stays ignored.
>
> Please apply my second patch!
Sorry, it was too late, my fault.
greg k-h
----- Original Message -----
From: Greg Kroah-Hartman [mailto:[email protected]]
To: Maarten Brock [mailto:[email protected]]
Cc: Arnd Bergmann [mailto:[email protected]], Peter Korsgaard [mailto:[email protected]], Jiri Slaby [mailto:[email protected]], Rich Felker [mailto:[email protected]], [email protected], [email protected]
Sent: Tue, 19 Apr 2016 08:12:36 +0200
Subject: Re: [PATCH] serial-uartlite: un-constify uartlite_be/uartlite_le
> On Thu, Mar 10, 2016 at 10:08:01AM +0100, Maarten Brock wrote:
> > I've created a version 2 of this patch immediately which fixes the
> > warning, but somehow this stays ignored.
> >
> > Please apply my second patch!
>
> Sorry, it was too late, my fault.
>
> greg k-h
Hello Greg,
Now that the original patch is reverted, can you apply my second version of the
patch which includes extra casts to suppress the warnings?
Maarten
On Tue, Apr 19, 2016 at 09:51:43AM +0200, Maarten Brock wrote:
> ----- Original Message -----
> From: Greg Kroah-Hartman [mailto:[email protected]]
> To: Maarten Brock [mailto:[email protected]]
> Cc: Arnd Bergmann [mailto:[email protected]], Peter Korsgaard [mailto:[email protected]], Jiri Slaby [mailto:[email protected]], Rich Felker [mailto:[email protected]], [email protected], [email protected]
> Sent: Tue, 19 Apr 2016 08:12:36 +0200
> Subject: Re: [PATCH] serial-uartlite: un-constify uartlite_be/uartlite_le
>
>
> > On Thu, Mar 10, 2016 at 10:08:01AM +0100, Maarten Brock wrote:
> > > I've created a version 2 of this patch immediately which fixes the
> > > warning, but somehow this stays ignored.
> > >
> > > Please apply my second patch!
> >
> > Sorry, it was too late, my fault.
> >
> > greg k-h
>
> Hello Greg,
>
> Now that the original patch is reverted, can you apply my second version of the
> patch which includes extra casts to suppress the warnings?
Can you please resend it? I don't see it in my queue :(