[ +CC: staging list (for real this time) ]
On Sat, Oct 15, 2016 at 12:28:01PM +0530, Bhumika Goyal wrote:
> Declare tty_port_operations structure as const as it is only stored in
> the ops field of a tty_port structure which is a field of a gb_tty
> structure. The ops field is of type const struct tty_port_operations *,
> so tty_port_operations structures having this property can be
> declared as const.
> Done using Coccinelle:
>
> @r1 disable optional_qualifier @
> identifier i;
> position p;
> @@
> static struct tty_port_operations i@p = {...};
>
> @ok1@
> identifier r1.i;
> position p;
> struct gb_tty q;
> @@
> q.port.ops=&i@p
>
> @bad@
> position p!={r1.p,ok1.p};
> identifier r1.i;
> @@
> i@p
>
> @depends on !bad disable optional_qualifier@
> identifier r1.i;
> @@
> static
> +const
> struct tty_port_operations i={...};
>
> @depends on !bad disable optional_qualifier@
> identifier r1.i;
> @@
> +const
> struct tty_port_operations i;
>
> File size before:
> text data bss dec hex filename
> 7646 512 56 8214 2016 drivers/staging/greybus/uart.o
>
> File size after:
> text data bss dec hex filename
> 7710 448 56 8214 2016 drivers/staging/greybus/uart.o
>
> Signed-off-by: Bhumika Goyal <[email protected]>
Acked-by: Johan Hovold <[email protected]>
> ---
> drivers/staging/greybus/uart.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/staging/greybus/uart.c b/drivers/staging/greybus/uart.c
> index 5ee7954..8162886 100644
> --- a/drivers/staging/greybus/uart.c
> +++ b/drivers/staging/greybus/uart.c
> @@ -832,7 +832,7 @@ static void gb_tty_port_shutdown(struct tty_port *port)
> .tiocmset = gb_tty_tiocmset,
> };
>
> -static struct tty_port_operations gb_port_ops = {
> +static const struct tty_port_operations gb_port_ops = {
> .dtr_rts = gb_tty_dtr_rts,
> .activate = gb_tty_port_activate,
> .shutdown = gb_tty_port_shutdown,
_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel