]> err.no Git - linux-2.6/blobdiff - fs/proc/proc_net.c
Merge branch 'upstream-jeff' of git://git.kernel.org/pub/scm/linux/kernel/git/romieu...
[linux-2.6] / fs / proc / proc_net.c
index 45dde2f7034d4f5a0479f26c49c06cd3dd6b5e57..2e91fb756e9ad27be30488bd88a5e5ac8856bf34 100644 (file)
@@ -31,6 +31,7 @@ struct proc_dir_entry *proc_net_create(struct net *net,
 {
        return create_proc_info_entry(name,mode, net->proc_net, get_info);
 }
+EXPORT_SYMBOL_GPL(proc_net_create);
 
 struct proc_dir_entry *proc_net_fops_create(struct net *net,
        const char *name, mode_t mode, const struct file_operations *fops)
@@ -42,12 +43,19 @@ struct proc_dir_entry *proc_net_fops_create(struct net *net,
                res->proc_fops = fops;
        return res;
 }
+EXPORT_SYMBOL_GPL(proc_net_fops_create);
 
 void proc_net_remove(struct net *net, const char *name)
 {
        remove_proc_entry(name, net->proc_net);
 }
+EXPORT_SYMBOL_GPL(proc_net_remove);
 
+struct net *get_proc_net(const struct inode *inode)
+{
+       return maybe_get_net(PDE_NET(PDE(inode)));
+}
+EXPORT_SYMBOL_GPL(get_proc_net);
 
 static struct proc_dir_entry *proc_net_shadow;
 
@@ -132,7 +140,7 @@ static struct inode_operations proc_net_dir_inode_operations = {
        .setattr        = proc_net_setattr,
 };
 
-static int proc_net_ns_init(struct net *net)
+static __net_init int proc_net_ns_init(struct net *net)
 {
        struct proc_dir_entry *root, *netd, *net_statd;
        int err;
@@ -170,19 +178,19 @@ free_root:
        goto out;
 }
 
-static void proc_net_ns_exit(struct net *net)
+static __net_exit void proc_net_ns_exit(struct net *net)
 {
        remove_proc_entry("stat", net->proc_net);
        remove_proc_entry("net", net->proc_net_root);
        kfree(net->proc_net_root);
 }
 
-struct pernet_operations proc_net_ns_ops = {
+struct pernet_operations __net_initdata proc_net_ns_ops = {
        .init = proc_net_ns_init,
        .exit = proc_net_ns_exit,
 };
 
-int proc_net_init(void)
+int __init proc_net_init(void)
 {
        proc_net_shadow = proc_mkdir("net", NULL);
        proc_net_shadow->proc_iops = &proc_net_dir_inode_operations;