aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorJeff Dike <jdike@addtoit.com>2006-10-02 05:17:18 -0400
committerLinus Torvalds <torvalds@g5.osdl.org>2006-10-02 10:57:14 -0400
commitb68e31d0ebbcc909d1941f9f230c9d062a3a13d3 (patch)
treeb32902e5de02081cbb9eca49d7bb0b444e2b4f23 /drivers
parented97bd37efd8ff7398d3a7eedf4bcbf245f5dad3 (diff)
[PATCH] const struct tty_operations
As part of an SMP cleanliness pass over UML, I consted a bunch of structures in order to not have to document their locking. One of these structures was a struct tty_operations. In order to const it in UML without introducing compiler complaints, the declaration of tty_set_operations needs to be changed, and then all of its callers need to be fixed. This patch declares all struct tty_operations in the tree as const. In all cases, they are static and used only as input to tty_set_operations. As an extra check, I ran an i386 allyesconfig build which produced no extra warnings. 53 drivers are affected. I checked the history of a bunch of them, and in most cases, there have been only a handful of maintenance changes in the last six months. serial_core.c was the busiest one that I looked at. Signed-off-by: Jeff Dike <jdike@addtoit.com> Acked-by: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/char/amiserial.c2
-rw-r--r--drivers/char/cyclades.c2
-rw-r--r--drivers/char/epca.c2
-rw-r--r--drivers/char/esp.c2
-rw-r--r--drivers/char/hvc_console.c2
-rw-r--r--drivers/char/hvcs.c2
-rw-r--r--drivers/char/hvsi.c2
-rw-r--r--drivers/char/ip2/ip2main.c2
-rw-r--r--drivers/char/isicom.c2
-rw-r--r--drivers/char/istallion.c2
-rw-r--r--drivers/char/moxa.c2
-rw-r--r--drivers/char/mxser.c2
-rw-r--r--drivers/char/pcmcia/synclink_cs.c2
-rw-r--r--drivers/char/pty.c2
-rw-r--r--drivers/char/rio/rio_linux.c2
-rw-r--r--drivers/char/riscom8.c2
-rw-r--r--drivers/char/rocket.c2
-rw-r--r--drivers/char/ser_a2232.c2
-rw-r--r--drivers/char/serial167.c2
-rw-r--r--drivers/char/specialix.c2
-rw-r--r--drivers/char/stallion.c2
-rw-r--r--drivers/char/sx.c2
-rw-r--r--drivers/char/synclink.c2
-rw-r--r--drivers/char/synclink_gt.c2
-rw-r--r--drivers/char/synclinkmp.c2
-rw-r--r--drivers/char/tty_io.c3
-rw-r--r--drivers/char/viocons.c2
-rw-r--r--drivers/char/vme_scc.c2
-rw-r--r--drivers/char/vt.c2
-rw-r--r--drivers/isdn/capi/capi.c2
-rw-r--r--drivers/isdn/gigaset/interface.c2
-rw-r--r--drivers/isdn/i4l/isdn_tty.c2
-rw-r--r--drivers/s390/char/con3215.c2
-rw-r--r--drivers/s390/char/sclp_tty.c2
-rw-r--r--drivers/s390/char/sclp_vt220.c2
-rw-r--r--drivers/s390/char/tty3270.c2
-rw-r--r--drivers/sbus/char/aurora.c2
-rw-r--r--drivers/serial/68328serial.c2
-rw-r--r--drivers/serial/68360serial.c2
-rw-r--r--drivers/serial/crisv10.c2
-rw-r--r--drivers/serial/mcfserial.c2
-rw-r--r--drivers/serial/serial_core.c2
-rw-r--r--drivers/tc/zs.c2
-rw-r--r--drivers/usb/class/cdc-acm.c2
-rw-r--r--drivers/usb/gadget/serial.c2
-rw-r--r--drivers/usb/serial/usb-serial.c2
46 files changed, 47 insertions, 46 deletions
diff --git a/drivers/char/amiserial.c b/drivers/char/amiserial.c
index 9d6713a93ed7..d0e92ed0a367 100644
--- a/drivers/char/amiserial.c
+++ b/drivers/char/amiserial.c
@@ -1958,7 +1958,7 @@ static void show_serial_version(void)
1958} 1958}
1959 1959
1960 1960
1961static struct tty_operations serial_ops = { 1961static const struct tty_operations serial_ops = {
1962 .open = rs_open, 1962 .open = rs_open,
1963 .close = rs_close, 1963 .close = rs_close,
1964 .write = rs_write, 1964 .write = rs_write,
diff --git a/drivers/char/cyclades.c b/drivers/char/cyclades.c
index c1c67281750d..f85b4eb16618 100644
--- a/drivers/char/cyclades.c
+++ b/drivers/char/cyclades.c
@@ -5205,7 +5205,7 @@ done:
5205 extra ports are ignored. 5205 extra ports are ignored.
5206 */ 5206 */
5207 5207
5208static struct tty_operations cy_ops = { 5208static const struct tty_operations cy_ops = {
5209 .open = cy_open, 5209 .open = cy_open,
5210 .close = cy_close, 5210 .close = cy_close,
5211 .write = cy_write, 5211 .write = cy_write,
diff --git a/drivers/char/epca.c b/drivers/char/epca.c
index 86d290e9f307..3baa2ab8cbd4 100644
--- a/drivers/char/epca.c
+++ b/drivers/char/epca.c
@@ -1125,7 +1125,7 @@ static void __exit epca_module_exit(void)
1125 1125
1126module_exit(epca_module_exit); 1126module_exit(epca_module_exit);
1127 1127
1128static struct tty_operations pc_ops = { 1128static const struct tty_operations pc_ops = {
1129 .open = pc_open, 1129 .open = pc_open,
1130 .close = pc_close, 1130 .close = pc_close,
1131 .write = pc_write, 1131 .write = pc_write,
diff --git a/drivers/char/esp.c b/drivers/char/esp.c
index afcd83d9984b..05788c75d7fc 100644
--- a/drivers/char/esp.c
+++ b/drivers/char/esp.c
@@ -2376,7 +2376,7 @@ static inline int autoconfig(struct esp_struct * info)
2376 return (port_detected); 2376 return (port_detected);
2377} 2377}
2378 2378
2379static struct tty_operations esp_ops = { 2379static const struct tty_operations esp_ops = {
2380 .open = esp_open, 2380 .open = esp_open,
2381 .close = rs_close, 2381 .close = rs_close,
2382 .write = rs_write, 2382 .write = rs_write,
diff --git a/drivers/char/hvc_console.c b/drivers/char/hvc_console.c
index a76d2c40dd5e..4053d1cd393f 100644
--- a/drivers/char/hvc_console.c
+++ b/drivers/char/hvc_console.c
@@ -696,7 +696,7 @@ int khvcd(void *unused)
696 return 0; 696 return 0;
697} 697}
698 698
699static struct tty_operations hvc_ops = { 699static const struct tty_operations hvc_ops = {
700 .open = hvc_open, 700 .open = hvc_open,
701 .close = hvc_close, 701 .close = hvc_close,
702 .write = hvc_write, 702 .write = hvc_write,
diff --git a/drivers/char/hvcs.c b/drivers/char/hvcs.c
index 4589ff302b07..0b89bcde8c52 100644
--- a/drivers/char/hvcs.c
+++ b/drivers/char/hvcs.c
@@ -1306,7 +1306,7 @@ static int hvcs_chars_in_buffer(struct tty_struct *tty)
1306 return hvcsd->chars_in_buffer; 1306 return hvcsd->chars_in_buffer;
1307} 1307}
1308 1308
1309static struct tty_operations hvcs_ops = { 1309static const struct tty_operations hvcs_ops = {
1310 .open = hvcs_open, 1310 .open = hvcs_open,
1311 .close = hvcs_close, 1311 .close = hvcs_close,
1312 .hangup = hvcs_hangup, 1312 .hangup = hvcs_hangup,
diff --git a/drivers/char/hvsi.c b/drivers/char/hvsi.c
index a89a95fb5e40..c07dc58d5c1d 100644
--- a/drivers/char/hvsi.c
+++ b/drivers/char/hvsi.c
@@ -1130,7 +1130,7 @@ static int hvsi_tiocmset(struct tty_struct *tty, struct file *file,
1130} 1130}
1131 1131
1132 1132
1133static struct tty_operations hvsi_ops = { 1133static const struct tty_operations hvsi_ops = {
1134 .open = hvsi_open, 1134 .open = hvsi_open,
1135 .close = hvsi_close, 1135 .close = hvsi_close,
1136 .write = hvsi_write, 1136 .write = hvsi_write,
diff --git a/drivers/char/ip2/ip2main.c b/drivers/char/ip2/ip2main.c
index 331f447e6228..4828bc914ce3 100644
--- a/drivers/char/ip2/ip2main.c
+++ b/drivers/char/ip2/ip2main.c
@@ -458,7 +458,7 @@ cleanup_module(void)
458} 458}
459#endif /* MODULE */ 459#endif /* MODULE */
460 460
461static struct tty_operations ip2_ops = { 461static const struct tty_operations ip2_ops = {
462 .open = ip2_open, 462 .open = ip2_open,
463 .close = ip2_close, 463 .close = ip2_close,
464 .write = ip2_write, 464 .write = ip2_write,
diff --git a/drivers/char/isicom.c b/drivers/char/isicom.c
index 2e1da632aee1..ea2bbf80ad33 100644
--- a/drivers/char/isicom.c
+++ b/drivers/char/isicom.c
@@ -1550,7 +1550,7 @@ static void isicom_unregister_ioregion(struct pci_dev *pdev)
1550 board->base = 0; 1550 board->base = 0;
1551} 1551}
1552 1552
1553static struct tty_operations isicom_ops = { 1553static const struct tty_operations isicom_ops = {
1554 .open = isicom_open, 1554 .open = isicom_open,
1555 .close = isicom_close, 1555 .close = isicom_close,
1556 .write = isicom_write, 1556 .write = isicom_write,
diff --git a/drivers/char/istallion.c b/drivers/char/istallion.c
index 6b4d82a4565f..d6e031542c6b 100644
--- a/drivers/char/istallion.c
+++ b/drivers/char/istallion.c
@@ -4636,7 +4636,7 @@ static int stli_memioctl(struct inode *ip, struct file *fp, unsigned int cmd, un
4636 return rc; 4636 return rc;
4637} 4637}
4638 4638
4639static struct tty_operations stli_ops = { 4639static const struct tty_operations stli_ops = {
4640 .open = stli_open, 4640 .open = stli_open,
4641 .close = stli_close, 4641 .close = stli_close,
4642 .write = stli_write, 4642 .write = stli_write,
diff --git a/drivers/char/moxa.c b/drivers/char/moxa.c
index c1a6d3c48da1..b401383808c2 100644
--- a/drivers/char/moxa.c
+++ b/drivers/char/moxa.c
@@ -281,7 +281,7 @@ static int moxa_get_serial_info(struct moxa_str *, struct serial_struct __user *
281static int moxa_set_serial_info(struct moxa_str *, struct serial_struct __user *); 281static int moxa_set_serial_info(struct moxa_str *, struct serial_struct __user *);
282static void MoxaSetFifo(int port, int enable); 282static void MoxaSetFifo(int port, int enable);
283 283
284static struct tty_operations moxa_ops = { 284static const struct tty_operations moxa_ops = {
285 .open = moxa_open, 285 .open = moxa_open,
286 .close = moxa_close, 286 .close = moxa_close,
287 .write = moxa_write, 287 .write = moxa_write,
diff --git a/drivers/char/mxser.c b/drivers/char/mxser.c
index 27a653772049..8253fca8efd5 100644
--- a/drivers/char/mxser.c
+++ b/drivers/char/mxser.c
@@ -453,7 +453,7 @@ static int CheckIsMoxaMust(int io)
453 453
454/* above is modified by Victor Yu. 08-15-2002 */ 454/* above is modified by Victor Yu. 08-15-2002 */
455 455
456static struct tty_operations mxser_ops = { 456static const struct tty_operations mxser_ops = {
457 .open = mxser_open, 457 .open = mxser_open,
458 .close = mxser_close, 458 .close = mxser_close,
459 .write = mxser_write, 459 .write = mxser_write,
diff --git a/drivers/char/pcmcia/synclink_cs.c b/drivers/char/pcmcia/synclink_cs.c
index 00f574cbb0d4..dd845cbefe94 100644
--- a/drivers/char/pcmcia/synclink_cs.c
+++ b/drivers/char/pcmcia/synclink_cs.c
@@ -3010,7 +3010,7 @@ static struct pcmcia_driver mgslpc_driver = {
3010 .resume = mgslpc_resume, 3010 .resume = mgslpc_resume,
3011}; 3011};
3012 3012
3013static struct tty_operations mgslpc_ops = { 3013static const struct tty_operations mgslpc_ops = {
3014 .open = mgslpc_open, 3014 .open = mgslpc_open,
3015 .close = mgslpc_close, 3015 .close = mgslpc_close,
3016 .write = mgslpc_write, 3016 .write = mgslpc_write,
diff --git a/drivers/char/pty.c b/drivers/char/pty.c
index 34dd4c38110e..80d3eedd7f96 100644
--- a/drivers/char/pty.c
+++ b/drivers/char/pty.c
@@ -224,7 +224,7 @@ static void pty_set_termios(struct tty_struct *tty, struct termios *old_termios)
224 tty->termios->c_cflag |= (CS8 | CREAD); 224 tty->termios->c_cflag |= (CS8 | CREAD);
225} 225}
226 226
227static struct tty_operations pty_ops = { 227static const struct tty_operations pty_ops = {
228 .open = pty_open, 228 .open = pty_open,
229 .close = pty_close, 229 .close = pty_close,
230 .write = pty_write, 230 .write = pty_write,
diff --git a/drivers/char/rio/rio_linux.c b/drivers/char/rio/rio_linux.c
index 3fa80aaf4527..202a3b0945b7 100644
--- a/drivers/char/rio/rio_linux.c
+++ b/drivers/char/rio/rio_linux.c
@@ -727,7 +727,7 @@ static struct vpd_prom *get_VPD_PROM(struct Host *hp)
727 return &vpdp; 727 return &vpdp;
728} 728}
729 729
730static struct tty_operations rio_ops = { 730static const struct tty_operations rio_ops = {
731 .open = riotopen, 731 .open = riotopen,
732 .close = gs_close, 732 .close = gs_close,
733 .write = gs_write, 733 .write = gs_write,
diff --git a/drivers/char/riscom8.c b/drivers/char/riscom8.c
index 06b9f78a95d9..214d850112fd 100644
--- a/drivers/char/riscom8.c
+++ b/drivers/char/riscom8.c
@@ -1583,7 +1583,7 @@ static void do_softint(void *private_)
1583 } 1583 }
1584} 1584}
1585 1585
1586static struct tty_operations riscom_ops = { 1586static const struct tty_operations riscom_ops = {
1587 .open = rc_open, 1587 .open = rc_open,
1588 .close = rc_close, 1588 .close = rc_close,
1589 .write = rc_write, 1589 .write = rc_write,
diff --git a/drivers/char/rocket.c b/drivers/char/rocket.c
index 0ac131881322..bac80056f7e0 100644
--- a/drivers/char/rocket.c
+++ b/drivers/char/rocket.c
@@ -2334,7 +2334,7 @@ static int __init init_ISA(int i)
2334 return (1); 2334 return (1);
2335} 2335}
2336 2336
2337static struct tty_operations rocket_ops = { 2337static const struct tty_operations rocket_ops = {
2338 .open = rp_open, 2338 .open = rp_open,
2339 .close = rp_close, 2339 .close = rp_close,
2340 .write = rp_write, 2340 .write = rp_write,
diff --git a/drivers/char/ser_a2232.c b/drivers/char/ser_a2232.c
index 510bd3e0e88b..65c751d0d643 100644
--- a/drivers/char/ser_a2232.c
+++ b/drivers/char/ser_a2232.c
@@ -661,7 +661,7 @@ static void a2232_init_portstructs(void)
661 } 661 }
662} 662}
663 663
664static struct tty_operations a2232_ops = { 664static const struct tty_operations a2232_ops = {
665 .open = a2232_open, 665 .open = a2232_open,
666 .close = gs_close, 666 .close = gs_close,
667 .write = gs_write, 667 .write = gs_write,
diff --git a/drivers/char/serial167.c b/drivers/char/serial167.c
index 21a710cb4bba..b4ea1266b663 100644
--- a/drivers/char/serial167.c
+++ b/drivers/char/serial167.c
@@ -2158,7 +2158,7 @@ mvme167_serial_console_setup(int cflag)
2158 rcor >> 5, rbpr); 2158 rcor >> 5, rbpr);
2159} /* serial_console_init */ 2159} /* serial_console_init */
2160 2160
2161static struct tty_operations cy_ops = { 2161static const struct tty_operations cy_ops = {
2162 .open = cy_open, 2162 .open = cy_open,
2163 .close = cy_close, 2163 .close = cy_close,
2164 .write = cy_write, 2164 .write = cy_write,
diff --git a/drivers/char/specialix.c b/drivers/char/specialix.c
index f52c7c31badf..902c48dca3bc 100644
--- a/drivers/char/specialix.c
+++ b/drivers/char/specialix.c
@@ -2363,7 +2363,7 @@ static void do_softint(void *private_)
2363 func_exit(); 2363 func_exit();
2364} 2364}
2365 2365
2366static struct tty_operations sx_ops = { 2366static const struct tty_operations sx_ops = {
2367 .open = sx_open, 2367 .open = sx_open,
2368 .close = sx_close, 2368 .close = sx_close,
2369 .write = sx_write, 2369 .write = sx_write,
diff --git a/drivers/char/stallion.c b/drivers/char/stallion.c
index 3beb2203d24b..bd711537ec4e 100644
--- a/drivers/char/stallion.c
+++ b/drivers/char/stallion.c
@@ -2993,7 +2993,7 @@ static int stl_memioctl(struct inode *ip, struct file *fp, unsigned int cmd, uns
2993 return(rc); 2993 return(rc);
2994} 2994}
2995 2995
2996static struct tty_operations stl_ops = { 2996static const struct tty_operations stl_ops = {
2997 .open = stl_open, 2997 .open = stl_open,
2998 .close = stl_close, 2998 .close = stl_close,
2999 .write = stl_write, 2999 .write = stl_write,
diff --git a/drivers/char/sx.c b/drivers/char/sx.c
index e1cd2bc4b1e4..57e31e5eaedb 100644
--- a/drivers/char/sx.c
+++ b/drivers/char/sx.c
@@ -2226,7 +2226,7 @@ static int probe_si (struct sx_board *board)
2226 return 1; 2226 return 1;
2227} 2227}
2228 2228
2229static struct tty_operations sx_ops = { 2229static const struct tty_operations sx_ops = {
2230 .break_ctl = sx_break, 2230 .break_ctl = sx_break,
2231 .open = sx_open, 2231 .open = sx_open,
2232 .close = gs_close, 2232 .close = gs_close,
diff --git a/drivers/char/synclink.c b/drivers/char/synclink.c
index 78b1b1a2732b..244dc308c770 100644
--- a/drivers/char/synclink.c
+++ b/drivers/char/synclink.c
@@ -4360,7 +4360,7 @@ static struct mgsl_struct* mgsl_allocate_device(void)
4360 4360
4361} /* end of mgsl_allocate_device()*/ 4361} /* end of mgsl_allocate_device()*/
4362 4362
4363static struct tty_operations mgsl_ops = { 4363static const struct tty_operations mgsl_ops = {
4364 .open = mgsl_open, 4364 .open = mgsl_open,
4365 .close = mgsl_close, 4365 .close = mgsl_close,
4366 .write = mgsl_write, 4366 .write = mgsl_write,
diff --git a/drivers/char/synclink_gt.c b/drivers/char/synclink_gt.c
index 78bc85180c82..bdc7cb248b8f 100644
--- a/drivers/char/synclink_gt.c
+++ b/drivers/char/synclink_gt.c
@@ -3441,7 +3441,7 @@ static void __devexit remove_one(struct pci_dev *dev)
3441{ 3441{
3442} 3442}
3443 3443
3444static struct tty_operations ops = { 3444static const struct tty_operations ops = {
3445 .open = open, 3445 .open = open,
3446 .close = close, 3446 .close = close,
3447 .write = write, 3447 .write = write,
diff --git a/drivers/char/synclinkmp.c b/drivers/char/synclinkmp.c
index 66f3754fbbdf..6eb75dcd7961 100644
--- a/drivers/char/synclinkmp.c
+++ b/drivers/char/synclinkmp.c
@@ -3929,7 +3929,7 @@ void device_init(int adapter_num, struct pci_dev *pdev)
3929 } 3929 }
3930} 3930}
3931 3931
3932static struct tty_operations ops = { 3932static const struct tty_operations ops = {
3933 .open = open, 3933 .open = open,
3934 .close = close, 3934 .close = close,
3935 .write = write, 3935 .write = write,
diff --git a/drivers/char/tty_io.c b/drivers/char/tty_io.c
index 333741770f1e..e90ea39c7c4b 100644
--- a/drivers/char/tty_io.c
+++ b/drivers/char/tty_io.c
@@ -3680,7 +3680,8 @@ void put_tty_driver(struct tty_driver *driver)
3680 kfree(driver); 3680 kfree(driver);
3681} 3681}
3682 3682
3683void tty_set_operations(struct tty_driver *driver, struct tty_operations *op) 3683void tty_set_operations(struct tty_driver *driver,
3684 const struct tty_operations *op)
3684{ 3685{
3685 driver->open = op->open; 3686 driver->open = op->open;
3686 driver->close = op->close; 3687 driver->close = op->close;
diff --git a/drivers/char/viocons.c b/drivers/char/viocons.c
index f3efeaf2826e..a362ee9c92dd 100644
--- a/drivers/char/viocons.c
+++ b/drivers/char/viocons.c
@@ -1047,7 +1047,7 @@ static int send_open(HvLpIndex remoteLp, void *sem)
1047 0, 0, 0, 0); 1047 0, 0, 0, 0);
1048} 1048}
1049 1049
1050static struct tty_operations serial_ops = { 1050static const struct tty_operations serial_ops = {
1051 .open = viotty_open, 1051 .open = viotty_open,
1052 .close = viotty_close, 1052 .close = viotty_close,
1053 .write = viotty_write, 1053 .write = viotty_write,
diff --git a/drivers/char/vme_scc.c b/drivers/char/vme_scc.c
index bfe5ea948f6a..c2ca31eb850b 100644
--- a/drivers/char/vme_scc.c
+++ b/drivers/char/vme_scc.c
@@ -113,7 +113,7 @@ static struct real_driver scc_real_driver = {
113}; 113};
114 114
115 115
116static struct tty_operations scc_ops = { 116static const struct tty_operations scc_ops = {
117 .open = scc_open, 117 .open = scc_open,
118 .close = gs_close, 118 .close = gs_close,
119 .write = gs_write, 119 .write = gs_write,
diff --git a/drivers/char/vt.c b/drivers/char/vt.c
index 303956d34569..ec0c070bf15f 100644
--- a/drivers/char/vt.c
+++ b/drivers/char/vt.c
@@ -2675,7 +2675,7 @@ static int __init con_init(void)
2675} 2675}
2676console_initcall(con_init); 2676console_initcall(con_init);
2677 2677
2678static struct tty_operations con_ops = { 2678static const struct tty_operations con_ops = {
2679 .open = con_open, 2679 .open = con_open,
2680 .close = con_close, 2680 .close = con_close,
2681 .write = con_write, 2681 .write = con_write,
diff --git a/drivers/isdn/capi/capi.c b/drivers/isdn/capi/capi.c
index 669f76393b5a..11844bbfe933 100644
--- a/drivers/isdn/capi/capi.c
+++ b/drivers/isdn/capi/capi.c
@@ -1298,7 +1298,7 @@ static int capinc_tty_read_proc(char *page, char **start, off_t off,
1298 1298
1299static struct tty_driver *capinc_tty_driver; 1299static struct tty_driver *capinc_tty_driver;
1300 1300
1301static struct tty_operations capinc_ops = { 1301static const struct tty_operations capinc_ops = {
1302 .open = capinc_tty_open, 1302 .open = capinc_tty_open,
1303 .close = capinc_tty_close, 1303 .close = capinc_tty_close,
1304 .write = capinc_tty_write, 1304 .write = capinc_tty_write,
diff --git a/drivers/isdn/gigaset/interface.c b/drivers/isdn/gigaset/interface.c
index bd2e4267528e..596f3aebe2f7 100644
--- a/drivers/isdn/gigaset/interface.c
+++ b/drivers/isdn/gigaset/interface.c
@@ -134,7 +134,7 @@ static int if_tiocmset(struct tty_struct *tty, struct file *file,
134static int if_write(struct tty_struct *tty, 134static int if_write(struct tty_struct *tty,
135 const unsigned char *buf, int count); 135 const unsigned char *buf, int count);
136 136
137static struct tty_operations if_ops = { 137static const struct tty_operations if_ops = {
138 .open = if_open, 138 .open = if_open,
139 .close = if_close, 139 .close = if_close,
140 .ioctl = if_ioctl, 140 .ioctl = if_ioctl,
diff --git a/drivers/isdn/i4l/isdn_tty.c b/drivers/isdn/i4l/isdn_tty.c
index 9ab66e8960d5..2b91bb07fc7f 100644
--- a/drivers/isdn/i4l/isdn_tty.c
+++ b/drivers/isdn/i4l/isdn_tty.c
@@ -1860,7 +1860,7 @@ modem_write_profile(atemu * m)
1860 send_sig(SIGIO, dev->profd, 1); 1860 send_sig(SIGIO, dev->profd, 1);
1861} 1861}
1862 1862
1863static struct tty_operations modem_ops = { 1863static const struct tty_operations modem_ops = {
1864 .open = isdn_tty_open, 1864 .open = isdn_tty_open,
1865 .close = isdn_tty_close, 1865 .close = isdn_tty_close,
1866 .write = isdn_tty_write, 1866 .write = isdn_tty_write,
diff --git a/drivers/s390/char/con3215.c b/drivers/s390/char/con3215.c
index 2fa566fa6da4..d7de175d53f0 100644
--- a/drivers/s390/char/con3215.c
+++ b/drivers/s390/char/con3215.c
@@ -1103,7 +1103,7 @@ tty3215_start(struct tty_struct *tty)
1103 } 1103 }
1104} 1104}
1105 1105
1106static struct tty_operations tty3215_ops = { 1106static const struct tty_operations tty3215_ops = {
1107 .open = tty3215_open, 1107 .open = tty3215_open,
1108 .close = tty3215_close, 1108 .close = tty3215_close,
1109 .write = tty3215_write, 1109 .write = tty3215_write,
diff --git a/drivers/s390/char/sclp_tty.c b/drivers/s390/char/sclp_tty.c
index f6cf9023039e..6f43e04dbefd 100644
--- a/drivers/s390/char/sclp_tty.c
+++ b/drivers/s390/char/sclp_tty.c
@@ -711,7 +711,7 @@ static struct sclp_register sclp_input_event =
711 .receiver_fn = sclp_tty_receiver 711 .receiver_fn = sclp_tty_receiver
712}; 712};
713 713
714static struct tty_operations sclp_ops = { 714static const struct tty_operations sclp_ops = {
715 .open = sclp_tty_open, 715 .open = sclp_tty_open,
716 .close = sclp_tty_close, 716 .close = sclp_tty_close,
717 .write = sclp_tty_write, 717 .write = sclp_tty_write,
diff --git a/drivers/s390/char/sclp_vt220.c b/drivers/s390/char/sclp_vt220.c
index 54fba6f17188..723bf4191bfe 100644
--- a/drivers/s390/char/sclp_vt220.c
+++ b/drivers/s390/char/sclp_vt220.c
@@ -655,7 +655,7 @@ __sclp_vt220_init(int early)
655 return 0; 655 return 0;
656} 656}
657 657
658static struct tty_operations sclp_vt220_ops = { 658static const struct tty_operations sclp_vt220_ops = {
659 .open = sclp_vt220_open, 659 .open = sclp_vt220_open,
660 .close = sclp_vt220_close, 660 .close = sclp_vt220_close,
661 .write = sclp_vt220_write, 661 .write = sclp_vt220_write,
diff --git a/drivers/s390/char/tty3270.c b/drivers/s390/char/tty3270.c
index 06e2eeec8473..4717c3611601 100644
--- a/drivers/s390/char/tty3270.c
+++ b/drivers/s390/char/tty3270.c
@@ -1737,7 +1737,7 @@ tty3270_ioctl(struct tty_struct *tty, struct file *file,
1737 return kbd_ioctl(tp->kbd, file, cmd, arg); 1737 return kbd_ioctl(tp->kbd, file, cmd, arg);
1738} 1738}
1739 1739
1740static struct tty_operations tty3270_ops = { 1740static const struct tty_operations tty3270_ops = {
1741 .open = tty3270_open, 1741 .open = tty3270_open,
1742 .close = tty3270_close, 1742 .close = tty3270_close,
1743 .write = tty3270_write, 1743 .write = tty3270_write,
diff --git a/drivers/sbus/char/aurora.c b/drivers/sbus/char/aurora.c
index 4fdb2c932210..a305d4091547 100644
--- a/drivers/sbus/char/aurora.c
+++ b/drivers/sbus/char/aurora.c
@@ -2187,7 +2187,7 @@ static void do_softint(void *private_)
2187#endif 2187#endif
2188} 2188}
2189 2189
2190static struct tty_operations aurora_ops = { 2190static const struct tty_operations aurora_ops = {
2191 .open = aurora_open, 2191 .open = aurora_open,
2192 .close = aurora_close, 2192 .close = aurora_close,
2193 .write = aurora_write, 2193 .write = aurora_write,
diff --git a/drivers/serial/68328serial.c b/drivers/serial/68328serial.c
index 993a702422ec..bac853c5abb5 100644
--- a/drivers/serial/68328serial.c
+++ b/drivers/serial/68328serial.c
@@ -1378,7 +1378,7 @@ void startup_console(void)
1378#endif /* CONFIG_PM_LEGACY */ 1378#endif /* CONFIG_PM_LEGACY */
1379 1379
1380 1380
1381static struct tty_operations rs_ops = { 1381static const struct tty_operations rs_ops = {
1382 .open = rs_open, 1382 .open = rs_open,
1383 .close = rs_close, 1383 .close = rs_close,
1384 .write = rs_write, 1384 .write = rs_write,
diff --git a/drivers/serial/68360serial.c b/drivers/serial/68360serial.c
index e80e70e9b126..1b299e8c57cd 100644
--- a/drivers/serial/68360serial.c
+++ b/drivers/serial/68360serial.c
@@ -2424,7 +2424,7 @@ long console_360_init(long kmem_start, long kmem_end)
2424*/ 2424*/
2425static int baud_idx; 2425static int baud_idx;
2426 2426
2427static struct tty_operations rs_360_ops = { 2427static const struct tty_operations rs_360_ops = {
2428 .owner = THIS_MODULE, 2428 .owner = THIS_MODULE,
2429 .open = rs_360_open, 2429 .open = rs_360_open,
2430 .close = rs_360_close, 2430 .close = rs_360_close,
diff --git a/drivers/serial/crisv10.c b/drivers/serial/crisv10.c
index cabd048c8636..9851d9eff022 100644
--- a/drivers/serial/crisv10.c
+++ b/drivers/serial/crisv10.c
@@ -4825,7 +4825,7 @@ show_serial_version(void)
4825 4825
4826/* rs_init inits the driver at boot (using the module_init chain) */ 4826/* rs_init inits the driver at boot (using the module_init chain) */
4827 4827
4828static struct tty_operations rs_ops = { 4828static const struct tty_operations rs_ops = {
4829 .open = rs_open, 4829 .open = rs_open,
4830 .close = rs_close, 4830 .close = rs_close,
4831 .write = rs_write, 4831 .write = rs_write,
diff --git a/drivers/serial/mcfserial.c b/drivers/serial/mcfserial.c
index 832abd3c4706..00d7859c167e 100644
--- a/drivers/serial/mcfserial.c
+++ b/drivers/serial/mcfserial.c
@@ -1666,7 +1666,7 @@ static void show_serial_version(void)
1666 printk(mcfrs_drivername); 1666 printk(mcfrs_drivername);
1667} 1667}
1668 1668
1669static struct tty_operations mcfrs_ops = { 1669static const struct tty_operations mcfrs_ops = {
1670 .open = mcfrs_open, 1670 .open = mcfrs_open,
1671 .close = mcfrs_close, 1671 .close = mcfrs_close,
1672 .write = mcfrs_write, 1672 .write = mcfrs_write,
diff --git a/drivers/serial/serial_core.c b/drivers/serial/serial_core.c
index 5f7ba1adb309..de5e8930a6fd 100644
--- a/drivers/serial/serial_core.c
+++ b/drivers/serial/serial_core.c
@@ -2111,7 +2111,7 @@ uart_configure_port(struct uart_driver *drv, struct uart_state *state,
2111 } 2111 }
2112} 2112}
2113 2113
2114static struct tty_operations uart_ops = { 2114static const struct tty_operations uart_ops = {
2115 .open = uart_open, 2115 .open = uart_open,
2116 .close = uart_close, 2116 .close = uart_close,
2117 .write = uart_write, 2117 .write = uart_write,
diff --git a/drivers/tc/zs.c b/drivers/tc/zs.c
index 5e8a27620f6f..622881f26761 100644
--- a/drivers/tc/zs.c
+++ b/drivers/tc/zs.c
@@ -1701,7 +1701,7 @@ static void __init probe_sccs(void)
1701 spin_unlock_irqrestore(&zs_lock, flags); 1701 spin_unlock_irqrestore(&zs_lock, flags);
1702} 1702}
1703 1703
1704static struct tty_operations serial_ops = { 1704static const struct tty_operations serial_ops = {
1705 .open = rs_open, 1705 .open = rs_open,
1706 .close = rs_close, 1706 .close = rs_close,
1707 .write = rs_write, 1707 .write = rs_write,
diff --git a/drivers/usb/class/cdc-acm.c b/drivers/usb/class/cdc-acm.c
index ca90326f2f5c..71288295df2f 100644
--- a/drivers/usb/class/cdc-acm.c
+++ b/drivers/usb/class/cdc-acm.c
@@ -1120,7 +1120,7 @@ static struct usb_driver acm_driver = {
1120 * TTY driver structures. 1120 * TTY driver structures.
1121 */ 1121 */
1122 1122
1123static struct tty_operations acm_ops = { 1123static const struct tty_operations acm_ops = {
1124 .open = acm_tty_open, 1124 .open = acm_tty_open,
1125 .close = acm_tty_close, 1125 .close = acm_tty_close,
1126 .write = acm_tty_write, 1126 .write = acm_tty_write,
diff --git a/drivers/usb/gadget/serial.c b/drivers/usb/gadget/serial.c
index b893e3118e1b..489a85e58bca 100644
--- a/drivers/usb/gadget/serial.c
+++ b/drivers/usb/gadget/serial.c
@@ -271,7 +271,7 @@ static unsigned int use_acm = GS_DEFAULT_USE_ACM;
271 271
272 272
273/* tty driver struct */ 273/* tty driver struct */
274static struct tty_operations gs_tty_ops = { 274static const struct tty_operations gs_tty_ops = {
275 .open = gs_open, 275 .open = gs_open,
276 .close = gs_close, 276 .close = gs_close,
277 .write = gs_write, 277 .write = gs_write,
diff --git a/drivers/usb/serial/usb-serial.c b/drivers/usb/serial/usb-serial.c
index 0222d92842b8..8006e51c34bb 100644
--- a/drivers/usb/serial/usb-serial.c
+++ b/drivers/usb/serial/usb-serial.c
@@ -1015,7 +1015,7 @@ void usb_serial_disconnect(struct usb_interface *interface)
1015 dev_info(dev, "device disconnected\n"); 1015 dev_info(dev, "device disconnected\n");
1016} 1016}
1017 1017
1018static struct tty_operations serial_ops = { 1018static const struct tty_operations serial_ops = {
1019 .open = serial_open, 1019 .open = serial_open,
1020 .close = serial_close, 1020 .close = serial_close,
1021 .write = serial_write, 1021 .write = serial_write,