aboutsummaryrefslogtreecommitdiffstats
path: root/arch
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 /arch
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 'arch')
-rw-r--r--arch/alpha/kernel/srmcons.c2
-rw-r--r--arch/ia64/hp/sim/simserial.c2
-rw-r--r--arch/ppc/4xx_io/serial_sicc.c2
-rw-r--r--arch/um/drivers/line.c6
-rw-r--r--arch/um/include/line.h7
-rw-r--r--arch/v850/kernel/memcons.c2
-rw-r--r--arch/v850/kernel/simcons.c2
-rw-r--r--arch/xtensa/platform-iss/console.c2
8 files changed, 12 insertions, 13 deletions
diff --git a/arch/alpha/kernel/srmcons.c b/arch/alpha/kernel/srmcons.c
index 9d7dff27f81..75692320386 100644
--- a/arch/alpha/kernel/srmcons.c
+++ b/arch/alpha/kernel/srmcons.c
@@ -229,7 +229,7 @@ srmcons_close(struct tty_struct *tty, struct file *filp)
229 229
230static struct tty_driver *srmcons_driver; 230static struct tty_driver *srmcons_driver;
231 231
232static struct tty_operations srmcons_ops = { 232static const struct tty_operations srmcons_ops = {
233 .open = srmcons_open, 233 .open = srmcons_open,
234 .close = srmcons_close, 234 .close = srmcons_close,
235 .write = srmcons_write, 235 .write = srmcons_write,
diff --git a/arch/ia64/hp/sim/simserial.c b/arch/ia64/hp/sim/simserial.c
index 0daacc20ed3..246eb3d3757 100644
--- a/arch/ia64/hp/sim/simserial.c
+++ b/arch/ia64/hp/sim/simserial.c
@@ -940,7 +940,7 @@ static inline void show_serial_version(void)
940 printk(KERN_INFO " no serial options enabled\n"); 940 printk(KERN_INFO " no serial options enabled\n");
941} 941}
942 942
943static struct tty_operations hp_ops = { 943static const struct tty_operations hp_ops = {
944 .open = rs_open, 944 .open = rs_open,
945 .close = rs_close, 945 .close = rs_close,
946 .write = rs_write, 946 .write = rs_write,
diff --git a/arch/ppc/4xx_io/serial_sicc.c b/arch/ppc/4xx_io/serial_sicc.c
index b81a367dc27..87fe9a89dba 100644
--- a/arch/ppc/4xx_io/serial_sicc.c
+++ b/arch/ppc/4xx_io/serial_sicc.c
@@ -1720,7 +1720,7 @@ static int siccuart_open(struct tty_struct *tty, struct file *filp)
1720 return 0; 1720 return 0;
1721} 1721}
1722 1722
1723static struct tty_operations sicc_ops = { 1723static const struct tty_operations sicc_ops = {
1724 .open = siccuart_open, 1724 .open = siccuart_open,
1725 .close = siccuart_close, 1725 .close = siccuart_close,
1726 .write = siccuart_write, 1726 .write = siccuart_write,
diff --git a/arch/um/drivers/line.c b/arch/um/drivers/line.c
index 563ce7690a1..24747a41378 100644
--- a/arch/um/drivers/line.c
+++ b/arch/um/drivers/line.c
@@ -642,9 +642,9 @@ int line_remove(struct line *lines, unsigned int num, int n)
642} 642}
643 643
644struct tty_driver *line_register_devfs(struct lines *set, 644struct tty_driver *line_register_devfs(struct lines *set,
645 struct line_driver *line_driver, 645 struct line_driver *line_driver,
646 struct tty_operations *ops, struct line *lines, 646 const struct tty_operations *ops,
647 int nlines) 647 struct line *lines, int nlines)
648{ 648{
649 int i; 649 int i;
650 struct tty_driver *driver = alloc_tty_driver(nlines); 650 struct tty_driver *driver = alloc_tty_driver(nlines);
diff --git a/arch/um/include/line.h b/arch/um/include/line.h
index 642c9a0320f..7be24811bb3 100644
--- a/arch/um/include/line.h
+++ b/arch/um/include/line.h
@@ -91,10 +91,9 @@ extern int line_setup_irq(int fd, int input, int output, struct line *line,
91 void *data); 91 void *data);
92extern void line_close_chan(struct line *line); 92extern void line_close_chan(struct line *line);
93extern struct tty_driver * line_register_devfs(struct lines *set, 93extern struct tty_driver * line_register_devfs(struct lines *set,
94 struct line_driver *line_driver, 94 struct line_driver *line_driver,
95 struct tty_operations *driver, 95 const struct tty_operations *driver,
96 struct line *lines, 96 struct line *lines, int nlines);
97 int nlines);
98extern void lines_init(struct line *lines, int nlines, struct chan_opts *opts); 97extern void lines_init(struct line *lines, int nlines, struct chan_opts *opts);
99extern void close_lines(struct line *lines, int nlines); 98extern void close_lines(struct line *lines, int nlines);
100 99
diff --git a/arch/v850/kernel/memcons.c b/arch/v850/kernel/memcons.c
index 815f8a43926..92f514fdcc7 100644
--- a/arch/v850/kernel/memcons.c
+++ b/arch/v850/kernel/memcons.c
@@ -104,7 +104,7 @@ int memcons_tty_chars_in_buffer (struct tty_struct *tty)
104 return 0; 104 return 0;
105} 105}
106 106
107static struct tty_operations ops = { 107static const struct tty_operations ops = {
108 .open = memcons_tty_open, 108 .open = memcons_tty_open,
109 .write = memcons_tty_write, 109 .write = memcons_tty_write,
110 .write_room = memcons_tty_write_room, 110 .write_room = memcons_tty_write_room,
diff --git a/arch/v850/kernel/simcons.c b/arch/v850/kernel/simcons.c
index 3975aa02cef..9973596ae30 100644
--- a/arch/v850/kernel/simcons.c
+++ b/arch/v850/kernel/simcons.c
@@ -77,7 +77,7 @@ int simcons_tty_chars_in_buffer (struct tty_struct *tty)
77 return 0; 77 return 0;
78} 78}
79 79
80static struct tty_operations ops = { 80static const struct tty_operations ops = {
81 .open = simcons_tty_open, 81 .open = simcons_tty_open,
82 .write = simcons_tty_write, 82 .write = simcons_tty_write,
83 .write_room = simcons_tty_write_room, 83 .write_room = simcons_tty_write_room,
diff --git a/arch/xtensa/platform-iss/console.c b/arch/xtensa/platform-iss/console.c
index 22d3c571a7b..5c947cae752 100644
--- a/arch/xtensa/platform-iss/console.c
+++ b/arch/xtensa/platform-iss/console.c
@@ -191,7 +191,7 @@ static int rs_read_proc(char *page, char **start, off_t off, int count,
191} 191}
192 192
193 193
194static struct tty_operations serial_ops = { 194static const struct tty_operations serial_ops = {
195 .open = rs_open, 195 .open = rs_open,
196 .close = rs_close, 196 .close = rs_close,
197 .write = rs_write, 197 .write = rs_write,