Staging: greybus: uart: constify tty_port_operations structure
authorBhumika Goyal <bhumirks@gmail.com>
Sat, 15 Oct 2016 06:58:01 +0000 (12:28 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 17 Oct 2016 07:38:37 +0000 (09:38 +0200)
commit4d79f43191305b8382ae90147a34487b347b0509
tree67ce9f3011308dcded30baf0ecfcf8f915be73de
parent9edae49285051dc9312392df0d07c85f236a4d4b
Staging: greybus: uart: constify tty_port_operations structure

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 <bhumirks@gmail.com>
Acked-by: Johan Hovold <johan@kernel.org>
Reviewed-by: David Lin <dtwlin@gmail.com>
Acked-by: Julia Lawall <julia.lawall@lip6.fr>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/greybus/uart.c