diff options
author | Arjan van de Ven <arjan@linux.intel.com> | 2007-02-12 00:55:36 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-02-12 09:48:46 -0800 |
commit | da7071d7e32d15149cc513f096a3638097b66387 (patch) | |
tree | f56fb200090ad55b2e2a72c379b1eeea29795670 | |
parent | 9a32144e9d7b4e21341174b1a83b82a82353be86 (diff) | |
download | linux-stable-da7071d7e32d15149cc513f096a3638097b66387.tar.gz linux-stable-da7071d7e32d15149cc513f096a3638097b66387.tar.bz2 linux-stable-da7071d7e32d15149cc513f096a3638097b66387.zip |
[PATCH] mark struct file_operations const 8
Many struct file_operations in the kernel can be "const". Marking them const
moves these to the .rodata section, which avoids false sharing with potential
dirty data. In addition it'll catch accidental writes at compile time to
these shared resources.
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
31 files changed, 51 insertions, 51 deletions
diff --git a/net/irda/ircomm/ircomm_core.c b/net/irda/ircomm/ircomm_core.c index c28ee7bce26a..ec40715dcdda 100644 --- a/net/irda/ircomm/ircomm_core.c +++ b/net/irda/ircomm/ircomm_core.c @@ -56,7 +56,7 @@ static void ircomm_control_indication(struct ircomm_cb *self, extern struct proc_dir_entry *proc_irda; static int ircomm_seq_open(struct inode *, struct file *); -static struct file_operations ircomm_proc_fops = { +static const struct file_operations ircomm_proc_fops = { .owner = THIS_MODULE, .open = ircomm_seq_open, .read = seq_read, diff --git a/net/irda/iriap.c b/net/irda/iriap.c index 98b0fa965790..915d9384f36a 100644 --- a/net/irda/iriap.c +++ b/net/irda/iriap.c @@ -1080,7 +1080,7 @@ static int irias_seq_open(struct inode *inode, struct file *file) return seq_open(file, &irias_seq_ops); } -struct file_operations irias_seq_fops = { +const struct file_operations irias_seq_fops = { .owner = THIS_MODULE, .open = irias_seq_open, .read = seq_read, diff --git a/net/irda/irlan/irlan_common.c b/net/irda/irlan/irlan_common.c index 9c3dc57ff746..fcf9d6599628 100644 --- a/net/irda/irlan/irlan_common.c +++ b/net/irda/irlan/irlan_common.c @@ -93,7 +93,7 @@ extern struct proc_dir_entry *proc_irda; static int irlan_seq_open(struct inode *inode, struct file *file); -static struct file_operations irlan_fops = { +static const struct file_operations irlan_fops = { .owner = THIS_MODULE, .open = irlan_seq_open, .read = seq_read, diff --git a/net/irda/irlap.c b/net/irda/irlap.c index fd73e4af715a..d93ebd11431e 100644 --- a/net/irda/irlap.c +++ b/net/irda/irlap.c @@ -1244,7 +1244,7 @@ out_kfree: goto out; } -struct file_operations irlap_seq_fops = { +const struct file_operations irlap_seq_fops = { .owner = THIS_MODULE, .open = irlap_seq_open, .read = seq_read, diff --git a/net/irda/irlmp.c b/net/irda/irlmp.c index b134c3cf2bdb..9df0461b6d18 100644 --- a/net/irda/irlmp.c +++ b/net/irda/irlmp.c @@ -2026,7 +2026,7 @@ out_kfree: goto out; } -struct file_operations irlmp_seq_fops = { +const struct file_operations irlmp_seq_fops = { .owner = THIS_MODULE, .open = irlmp_seq_open, .read = seq_read, diff --git a/net/irda/irttp.c b/net/irda/irttp.c index 68836358fdf2..a7486b3bddcb 100644 --- a/net/irda/irttp.c +++ b/net/irda/irttp.c @@ -1895,7 +1895,7 @@ out_kfree: goto out; } -struct file_operations irttp_seq_fops = { +const struct file_operations irttp_seq_fops = { .owner = THIS_MODULE, .open = irttp_seq_open, .read = seq_read, diff --git a/net/llc/llc_proc.c b/net/llc/llc_proc.c index dcfe6c739471..3ab9d9f8b17f 100644 --- a/net/llc/llc_proc.c +++ b/net/llc/llc_proc.c @@ -208,7 +208,7 @@ static int llc_seq_core_open(struct inode *inode, struct file *file) return seq_open(file, &llc_seq_core_ops); } -static struct file_operations llc_seq_socket_fops = { +static const struct file_operations llc_seq_socket_fops = { .owner = THIS_MODULE, .open = llc_seq_socket_open, .read = seq_read, @@ -216,7 +216,7 @@ static struct file_operations llc_seq_socket_fops = { .release = seq_release, }; -static struct file_operations llc_seq_core_fops = { +static const struct file_operations llc_seq_core_fops = { .owner = THIS_MODULE, .open = llc_seq_core_open, .read = seq_read, diff --git a/net/netfilter/nf_conntrack_expect.c b/net/netfilter/nf_conntrack_expect.c index 9cbf926cdd14..5cdcd7f4e813 100644 --- a/net/netfilter/nf_conntrack_expect.c +++ b/net/netfilter/nf_conntrack_expect.c @@ -435,7 +435,7 @@ static int exp_open(struct inode *inode, struct file *file) return seq_open(file, &exp_seq_ops); } -struct file_operations exp_file_ops = { +const struct file_operations exp_file_ops = { .owner = THIS_MODULE, .open = exp_open, .read = seq_read, diff --git a/net/netfilter/nf_conntrack_standalone.c b/net/netfilter/nf_conntrack_standalone.c index f1cb60ff9319..04ac12431db7 100644 --- a/net/netfilter/nf_conntrack_standalone.c +++ b/net/netfilter/nf_conntrack_standalone.c @@ -229,7 +229,7 @@ out_free: return ret; } -static struct file_operations ct_file_ops = { +static const struct file_operations ct_file_ops = { .owner = THIS_MODULE, .open = ct_open, .read = seq_read, @@ -317,7 +317,7 @@ static int ct_cpu_seq_open(struct inode *inode, struct file *file) return seq_open(file, &ct_cpu_seq_ops); } -static struct file_operations ct_cpu_seq_fops = { +static const struct file_operations ct_cpu_seq_fops = { .owner = THIS_MODULE, .open = ct_cpu_seq_open, .read = seq_read, diff --git a/net/netfilter/nf_log.c b/net/netfilter/nf_log.c index 8901b3a07f7e..07e28e089616 100644 --- a/net/netfilter/nf_log.c +++ b/net/netfilter/nf_log.c @@ -151,7 +151,7 @@ static int nflog_open(struct inode *inode, struct file *file) return seq_open(file, &nflog_seq_ops); } -static struct file_operations nflog_file_ops = { +static const struct file_operations nflog_file_ops = { .owner = THIS_MODULE, .open = nflog_open, .read = seq_read, diff --git a/net/netfilter/nf_queue.c b/net/netfilter/nf_queue.c index 4d8936ed581d..e136fea1db22 100644 --- a/net/netfilter/nf_queue.c +++ b/net/netfilter/nf_queue.c @@ -331,7 +331,7 @@ static int nfqueue_open(struct inode *inode, struct file *file) return seq_open(file, &nfqueue_seq_ops); } -static struct file_operations nfqueue_file_ops = { +static const struct file_operations nfqueue_file_ops = { .owner = THIS_MODULE, .open = nfqueue_open, .read = seq_read, diff --git a/net/netfilter/nfnetlink_log.c b/net/netfilter/nfnetlink_log.c index d1505dd25c66..c47e7e2ba642 100644 --- a/net/netfilter/nfnetlink_log.c +++ b/net/netfilter/nfnetlink_log.c @@ -1025,7 +1025,7 @@ out_free: return ret; } -static struct file_operations nful_file_ops = { +static const struct file_operations nful_file_ops = { .owner = THIS_MODULE, .open = nful_open, .read = seq_read, diff --git a/net/netfilter/nfnetlink_queue.c b/net/netfilter/nfnetlink_queue.c index a88a017da22c..99e516eca41a 100644 --- a/net/netfilter/nfnetlink_queue.c +++ b/net/netfilter/nfnetlink_queue.c @@ -1077,7 +1077,7 @@ out_free: return ret; } -static struct file_operations nfqnl_file_ops = { +static const struct file_operations nfqnl_file_ops = { .owner = THIS_MODULE, .open = nfqnl_open, .read = seq_read, diff --git a/net/netfilter/x_tables.c b/net/netfilter/x_tables.c index 8996584b8499..134cc88f8c83 100644 --- a/net/netfilter/x_tables.c +++ b/net/netfilter/x_tables.c @@ -772,7 +772,7 @@ static int xt_tgt_open(struct inode *inode, struct file *file) return ret; } -static struct file_operations xt_file_ops = { +static const struct file_operations xt_file_ops = { .owner = THIS_MODULE, .open = xt_tgt_open, .read = seq_read, diff --git a/net/netfilter/xt_hashlimit.c b/net/netfilter/xt_hashlimit.c index bd1f7a2048d6..269a1e793478 100644 --- a/net/netfilter/xt_hashlimit.c +++ b/net/netfilter/xt_hashlimit.c @@ -37,7 +37,7 @@ MODULE_ALIAS("ip6t_hashlimit"); /* need to declare this at the top */ static struct proc_dir_entry *hashlimit_procdir4; static struct proc_dir_entry *hashlimit_procdir6; -static struct file_operations dl_file_ops; +static const struct file_operations dl_file_ops; /* hash table crap */ struct dsthash_dst { @@ -714,7 +714,7 @@ static int dl_proc_open(struct inode *inode, struct file *file) return ret; } -static struct file_operations dl_file_ops = { +static const struct file_operations dl_file_ops = { .owner = THIS_MODULE, .open = dl_proc_open, .read = seq_read, diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c index f6ee9b47428b..e73d8f546c6b 100644 --- a/net/netlink/af_netlink.c +++ b/net/netlink/af_netlink.c @@ -1713,7 +1713,7 @@ static int netlink_seq_open(struct inode *inode, struct file *file) return 0; } -static struct file_operations netlink_seq_fops = { +static const struct file_operations netlink_seq_fops = { .owner = THIS_MODULE, .open = netlink_seq_open, .read = seq_read, diff --git a/net/netrom/af_netrom.c b/net/netrom/af_netrom.c index 799b76806bc3..bf9837dd95c4 100644 --- a/net/netrom/af_netrom.c +++ b/net/netrom/af_netrom.c @@ -1335,7 +1335,7 @@ static int nr_info_open(struct inode *inode, struct file *file) return seq_open(file, &nr_info_seqops); } -static struct file_operations nr_info_fops = { +static const struct file_operations nr_info_fops = { .owner = THIS_MODULE, .open = nr_info_open, .read = seq_read, diff --git a/net/netrom/nr_route.c b/net/netrom/nr_route.c index e9909aeb43e9..c2fbac9c69ce 100644 --- a/net/netrom/nr_route.c +++ b/net/netrom/nr_route.c @@ -934,7 +934,7 @@ static int nr_node_info_open(struct inode *inode, struct file *file) return seq_open(file, &nr_node_seqops); } -struct file_operations nr_nodes_fops = { +const struct file_operations nr_nodes_fops = { .owner = THIS_MODULE, .open = nr_node_info_open, .read = seq_read, @@ -1018,7 +1018,7 @@ static int nr_neigh_info_open(struct inode *inode, struct file *file) return seq_open(file, &nr_neigh_seqops); } -struct file_operations nr_neigh_fops = { +const struct file_operations nr_neigh_fops = { .owner = THIS_MODULE, .open = nr_neigh_info_open, .read = seq_read, diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c index 444550917bc1..15ff7b15e211 100644 --- a/net/packet/af_packet.c +++ b/net/packet/af_packet.c @@ -1952,7 +1952,7 @@ static int packet_seq_open(struct inode *inode, struct file *file) return seq_open(file, &packet_seq_ops); } -static struct file_operations packet_seq_fops = { +static const struct file_operations packet_seq_fops = { .owner = THIS_MODULE, .open = packet_seq_open, .read = seq_read, diff --git a/net/rose/af_rose.c b/net/rose/af_rose.c index 7a81a8ee8544..8c34f1ca6c8c 100644 --- a/net/rose/af_rose.c +++ b/net/rose/af_rose.c @@ -1440,7 +1440,7 @@ static int rose_info_open(struct inode *inode, struct file *file) return seq_open(file, &rose_info_seqops); } -static struct file_operations rose_info_fops = { +static const struct file_operations rose_info_fops = { .owner = THIS_MODULE, .open = rose_info_open, .read = seq_read, diff --git a/net/rose/rose_route.c b/net/rose/rose_route.c index 0dcca4289eeb..1ddf7f5fa6db 100644 --- a/net/rose/rose_route.c +++ b/net/rose/rose_route.c @@ -1129,7 +1129,7 @@ static int rose_nodes_open(struct inode *inode, struct file *file) return seq_open(file, &rose_node_seqops); } -struct file_operations rose_nodes_fops = { +const struct file_operations rose_nodes_fops = { .owner = THIS_MODULE, .open = rose_nodes_open, .read = seq_read, @@ -1211,7 +1211,7 @@ static int rose_neigh_open(struct inode *inode, struct file *file) return seq_open(file, &rose_neigh_seqops); } -struct file_operations rose_neigh_fops = { +const struct file_operations rose_neigh_fops = { .owner = THIS_MODULE, .open = rose_neigh_open, .read = seq_read, @@ -1295,7 +1295,7 @@ static int rose_route_open(struct inode *inode, struct file *file) return seq_open(file, &rose_route_seqops); } -struct file_operations rose_routes_fops = { +const struct file_operations rose_routes_fops = { .owner = THIS_MODULE, .open = rose_route_open, .read = seq_read, diff --git a/net/rxrpc/proc.c b/net/rxrpc/proc.c index 29975d99d864..8551c879e456 100644 --- a/net/rxrpc/proc.c +++ b/net/rxrpc/proc.c @@ -37,7 +37,7 @@ static struct seq_operations rxrpc_proc_transports_ops = { .show = rxrpc_proc_transports_show, }; -static struct file_operations rxrpc_proc_transports_fops = { +static const struct file_operations rxrpc_proc_transports_fops = { .open = rxrpc_proc_transports_open, .read = seq_read, .llseek = seq_lseek, @@ -57,7 +57,7 @@ static struct seq_operations rxrpc_proc_peers_ops = { .show = rxrpc_proc_peers_show, }; -static struct file_operations rxrpc_proc_peers_fops = { +static const struct file_operations rxrpc_proc_peers_fops = { .open = rxrpc_proc_peers_open, .read = seq_read, .llseek = seq_lseek, @@ -77,7 +77,7 @@ static struct seq_operations rxrpc_proc_conns_ops = { .show = rxrpc_proc_conns_show, }; -static struct file_operations rxrpc_proc_conns_fops = { +static const struct file_operations rxrpc_proc_conns_fops = { .open = rxrpc_proc_conns_open, .read = seq_read, .llseek = seq_lseek, @@ -97,7 +97,7 @@ static struct seq_operations rxrpc_proc_calls_ops = { .show = rxrpc_proc_calls_show, }; -static struct file_operations rxrpc_proc_calls_fops = { +static const struct file_operations rxrpc_proc_calls_fops = { .open = rxrpc_proc_calls_open, .read = seq_read, .llseek = seq_lseek, diff --git a/net/sched/sch_api.c b/net/sched/sch_api.c index 60b92fcdc8bb..4158127bc202 100644 --- a/net/sched/sch_api.c +++ b/net/sched/sch_api.c @@ -1194,7 +1194,7 @@ static int psched_open(struct inode *inode, struct file *file) return single_open(file, psched_show, PDE(inode)->data); } -static struct file_operations psched_fops = { +static const struct file_operations psched_fops = { .owner = THIS_MODULE, .open = psched_open, .read = seq_read, diff --git a/net/sctp/proc.c b/net/sctp/proc.c index e93fc1cc430a..2f12bf2d8d3c 100644 --- a/net/sctp/proc.c +++ b/net/sctp/proc.c @@ -114,7 +114,7 @@ static int sctp_snmp_seq_open(struct inode *inode, struct file *file) return single_open(file, sctp_snmp_seq_show, NULL); } -static struct file_operations sctp_snmp_seq_fops = { +static const struct file_operations sctp_snmp_seq_fops = { .owner = THIS_MODULE, .open = sctp_snmp_seq_open, .read = seq_read, @@ -264,7 +264,7 @@ static int sctp_eps_seq_open(struct inode *inode, struct file *file) return seq_open(file, &sctp_eps_ops); } -static struct file_operations sctp_eps_seq_fops = { +static const struct file_operations sctp_eps_seq_fops = { .open = sctp_eps_seq_open, .read = seq_read, .llseek = seq_lseek, @@ -374,7 +374,7 @@ static int sctp_assocs_seq_open(struct inode *inode, struct file *file) return seq_open(file, &sctp_assoc_ops); } -static struct file_operations sctp_assocs_seq_fops = { +static const struct file_operations sctp_assocs_seq_fops = { .open = sctp_assocs_seq_open, .read = seq_read, .llseek = seq_lseek, diff --git a/net/socket.c b/net/socket.c index a92f59580234..0778c5442411 100644 --- a/net/socket.c +++ b/net/socket.c @@ -117,7 +117,7 @@ static ssize_t sock_sendpage(struct file *file, struct page *page, * in the operation structures but are done directly via the socketcall() multiplexor. */ -static struct file_operations socket_file_ops = { +static const struct file_operations socket_file_ops = { .owner = THIS_MODULE, .llseek = no_llseek, .aio_read = sock_aio_read, diff --git a/net/sunrpc/cache.c b/net/sunrpc/cache.c index c80df455802d..8612044b9189 100644 --- a/net/sunrpc/cache.c +++ b/net/sunrpc/cache.c @@ -282,9 +282,9 @@ static DEFINE_SPINLOCK(cache_list_lock); static struct cache_detail *current_detail; static int current_index; -static struct file_operations cache_file_operations; -static struct file_operations content_file_operations; -static struct file_operations cache_flush_operations; +static const struct file_operations cache_file_operations; +static const struct file_operations content_file_operations; +static const struct file_operations cache_flush_operations; static void do_cache_clean(struct work_struct *work); static DECLARE_DELAYED_WORK(cache_cleaner, do_cache_clean); @@ -887,7 +887,7 @@ cache_release(struct inode *inode, struct file *filp) -static struct file_operations cache_file_operations = { +static const struct file_operations cache_file_operations = { .owner = THIS_MODULE, .llseek = no_llseek, .read = cache_read, @@ -1245,7 +1245,7 @@ static int content_release(struct inode *inode, struct file *file) return seq_release(inode, file); } -static struct file_operations content_file_operations = { +static const struct file_operations content_file_operations = { .open = content_open, .read = seq_read, .llseek = seq_lseek, @@ -1297,7 +1297,7 @@ static ssize_t write_flush(struct file * file, const char __user * buf, return count; } -static struct file_operations cache_flush_operations = { +static const struct file_operations cache_flush_operations = { .open = nonseekable_open, .read = read_flush, .write = write_flush, diff --git a/net/sunrpc/rpc_pipe.c b/net/sunrpc/rpc_pipe.c index 89273d35e0cc..e1fad77a2257 100644 --- a/net/sunrpc/rpc_pipe.c +++ b/net/sunrpc/rpc_pipe.c @@ -309,7 +309,7 @@ rpc_pipe_ioctl(struct inode *ino, struct file *filp, } } -static struct file_operations rpc_pipe_fops = { +static const struct file_operations rpc_pipe_fops = { .owner = THIS_MODULE, .llseek = no_llseek, .read = rpc_pipe_read, @@ -366,7 +366,7 @@ rpc_info_release(struct inode *inode, struct file *file) return single_release(inode, file); } -static struct file_operations rpc_info_operations = { +static const struct file_operations rpc_info_operations = { .owner = THIS_MODULE, .open = rpc_info_open, .read = seq_read, diff --git a/net/sunrpc/stats.c b/net/sunrpc/stats.c index bd98124c3a64..044d9484bb8c 100644 --- a/net/sunrpc/stats.c +++ b/net/sunrpc/stats.c @@ -66,7 +66,7 @@ static int rpc_proc_open(struct inode *inode, struct file *file) return single_open(file, rpc_proc_show, PDE(inode)->data); } -static struct file_operations rpc_proc_fops = { +static const struct file_operations rpc_proc_fops = { .owner = THIS_MODULE, .open = rpc_proc_open, .read = seq_read, diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c index ac9478d0ca8b..606971645b33 100644 --- a/net/unix/af_unix.c +++ b/net/unix/af_unix.c @@ -2040,7 +2040,7 @@ out_kfree: goto out; } -static struct file_operations unix_seq_fops = { +static const struct file_operations unix_seq_fops = { .owner = THIS_MODULE, .open = unix_seq_open, .read = seq_read, diff --git a/net/wanrouter/wanproc.c b/net/wanrouter/wanproc.c index abce82873604..205106521ecb 100644 --- a/net/wanrouter/wanproc.c +++ b/net/wanrouter/wanproc.c @@ -188,7 +188,7 @@ static int status_open(struct inode *inode, struct file *file) return seq_open(file, &status_op); } -static struct file_operations config_fops = { +static const struct file_operations config_fops = { .owner = THIS_MODULE, .open = config_open, .read = seq_read, @@ -196,7 +196,7 @@ static struct file_operations config_fops = { .release = seq_release, }; -static struct file_operations status_fops = { +static const struct file_operations status_fops = { .owner = THIS_MODULE, .open = status_open, .read = seq_read, @@ -271,7 +271,7 @@ static int wandev_open(struct inode *inode, struct file *file) return single_open(file, wandev_show, PDE(inode)->data); } -static struct file_operations wandev_fops = { +static const struct file_operations wandev_fops = { .owner = THIS_MODULE, .open = wandev_open, .read = seq_read, diff --git a/net/x25/x25_proc.c b/net/x25/x25_proc.c index 3c9f1ba56221..96001f0c64fc 100644 --- a/net/x25/x25_proc.c +++ b/net/x25/x25_proc.c @@ -270,7 +270,7 @@ static int x25_seq_forward_open(struct inode *inode, struct file *file) return seq_open(file, &x25_seq_forward_ops); } -static struct file_operations x25_seq_socket_fops = { +static const struct file_operations x25_seq_socket_fops = { .owner = THIS_MODULE, .open = x25_seq_socket_open, .read = seq_read, @@ -278,7 +278,7 @@ static struct file_operations x25_seq_socket_fops = { .release = seq_release, }; -static struct file_operations x25_seq_route_fops = { +static const struct file_operations x25_seq_route_fops = { .owner = THIS_MODULE, .open = x25_seq_route_open, .read = seq_read, |