X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=net%2Fappletalk%2Fatalk_proc.c;h=162199a2d74f18e6b41ee7322c2ed8d66dfc4539;hb=5554b35933245e95710d709175e14c02cbc956a4;hp=bc3015f277ba6a80284c50b159355608105c8385;hpb=958b7f37ee0fb2846c8d44310a68ae9605614ff9;p=linux-2.6 diff --git a/net/appletalk/atalk_proc.c b/net/appletalk/atalk_proc.c index bc3015f277..162199a2d7 100644 --- a/net/appletalk/atalk_proc.c +++ b/net/appletalk/atalk_proc.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include @@ -26,6 +27,7 @@ static __inline__ struct atalk_iface *atalk_get_interface_idx(loff_t pos) } static void *atalk_seq_interface_start(struct seq_file *seq, loff_t *pos) + __acquires(atalk_interfaces_lock) { loff_t l = *pos; @@ -51,6 +53,7 @@ out: } static void atalk_seq_interface_stop(struct seq_file *seq, void *v) + __releases(atalk_interfaces_lock) { read_unlock_bh(&atalk_interfaces_lock); } @@ -85,6 +88,7 @@ static __inline__ struct atalk_route *atalk_get_route_idx(loff_t pos) } static void *atalk_seq_route_start(struct seq_file *seq, loff_t *pos) + __acquires(atalk_routes_lock) { loff_t l = *pos; @@ -110,6 +114,7 @@ out: } static void atalk_seq_route_stop(struct seq_file *seq, void *v) + __releases(atalk_routes_lock) { read_unlock_bh(&atalk_routes_lock); } @@ -153,6 +158,7 @@ found: } static void *atalk_seq_socket_start(struct seq_file *seq, loff_t *pos) + __acquires(atalk_sockets_lock) { loff_t l = *pos; @@ -175,6 +181,7 @@ out: } static void atalk_seq_socket_stop(struct seq_file *seq, void *v) + __releases(atalk_sockets_lock) { read_unlock_bh(&atalk_sockets_lock); } @@ -204,21 +211,21 @@ out: return 0; } -static struct seq_operations atalk_seq_interface_ops = { +static const struct seq_operations atalk_seq_interface_ops = { .start = atalk_seq_interface_start, .next = atalk_seq_interface_next, .stop = atalk_seq_interface_stop, .show = atalk_seq_interface_show, }; -static struct seq_operations atalk_seq_route_ops = { +static const struct seq_operations atalk_seq_route_ops = { .start = atalk_seq_route_start, .next = atalk_seq_route_next, .stop = atalk_seq_route_stop, .show = atalk_seq_route_show, }; -static struct seq_operations atalk_seq_socket_ops = { +static const struct seq_operations atalk_seq_socket_ops = { .start = atalk_seq_socket_start, .next = atalk_seq_socket_next, .stop = atalk_seq_socket_stop, @@ -240,7 +247,7 @@ static int atalk_seq_socket_open(struct inode *inode, struct file *file) return seq_open(file, &atalk_seq_socket_ops); } -static struct file_operations atalk_seq_interface_fops = { +static const struct file_operations atalk_seq_interface_fops = { .owner = THIS_MODULE, .open = atalk_seq_interface_open, .read = seq_read, @@ -248,7 +255,7 @@ static struct file_operations atalk_seq_interface_fops = { .release = seq_release, }; -static struct file_operations atalk_seq_route_fops = { +static const struct file_operations atalk_seq_route_fops = { .owner = THIS_MODULE, .open = atalk_seq_route_open, .read = seq_read, @@ -256,7 +263,7 @@ static struct file_operations atalk_seq_route_fops = { .release = seq_release, }; -static struct file_operations atalk_seq_socket_fops = { +static const struct file_operations atalk_seq_socket_fops = { .owner = THIS_MODULE, .open = atalk_seq_socket_open, .read = seq_read, @@ -271,30 +278,29 @@ int __init atalk_proc_init(void) struct proc_dir_entry *p; int rc = -ENOMEM; - atalk_proc_dir = proc_mkdir("atalk", proc_net); + atalk_proc_dir = proc_mkdir("atalk", init_net.proc_net); if (!atalk_proc_dir) goto out; atalk_proc_dir->owner = THIS_MODULE; - p = create_proc_entry("interface", S_IRUGO, atalk_proc_dir); + p = proc_create("interface", S_IRUGO, atalk_proc_dir, + &atalk_seq_interface_fops); if (!p) goto out_interface; - p->proc_fops = &atalk_seq_interface_fops; - p = create_proc_entry("route", S_IRUGO, atalk_proc_dir); + p = proc_create("route", S_IRUGO, atalk_proc_dir, + &atalk_seq_route_fops); if (!p) goto out_route; - p->proc_fops = &atalk_seq_route_fops; - p = create_proc_entry("socket", S_IRUGO, atalk_proc_dir); + p = proc_create("socket", S_IRUGO, atalk_proc_dir, + &atalk_seq_socket_fops); if (!p) goto out_socket; - p->proc_fops = &atalk_seq_socket_fops; - p = create_proc_entry("arp", S_IRUGO, atalk_proc_dir); + p = proc_create("arp", S_IRUGO, atalk_proc_dir, &atalk_seq_arp_fops); if (!p) goto out_arp; - p->proc_fops = &atalk_seq_arp_fops; rc = 0; out: @@ -306,7 +312,7 @@ out_socket: out_route: remove_proc_entry("interface", atalk_proc_dir); out_interface: - remove_proc_entry("atalk", proc_net); + remove_proc_entry("atalk", init_net.proc_net); goto out; } @@ -316,5 +322,5 @@ void __exit atalk_proc_exit(void) remove_proc_entry("route", atalk_proc_dir); remove_proc_entry("socket", atalk_proc_dir); remove_proc_entry("arp", atalk_proc_dir); - remove_proc_entry("atalk", proc_net); + remove_proc_entry("atalk", init_net.proc_net); }