Merge tag 'nfs-for-6.9-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs
[linux-2.6-microblaze.git] / fs / nfs / inode.c
index 93ea49a..c709c29 100644 (file)
@@ -2426,12 +2426,16 @@ EXPORT_SYMBOL_GPL(nfs_net_id);
 
 static int nfs_net_init(struct net *net)
 {
+       struct nfs_net *nn = net_generic(net, nfs_net_id);
+
        nfs_clients_init(net);
+       rpc_proc_register(net, &nn->rpcstats);
        return nfs_fs_proc_net_init(net);
 }
 
 static void nfs_net_exit(struct net *net)
 {
+       rpc_proc_unregister(net, "nfs");
        nfs_fs_proc_net_exit(net);
        nfs_clients_exit(net);
 }
@@ -2486,15 +2490,12 @@ static int __init init_nfs_fs(void)
        if (err)
                goto out1;
 
-       rpc_proc_register(&init_net, &nfs_rpcstat);
-
        err = register_nfs_fs();
        if (err)
                goto out0;
 
        return 0;
 out0:
-       rpc_proc_unregister(&init_net, "nfs");
        nfs_destroy_directcache();
 out1:
        nfs_destroy_writepagecache();
@@ -2524,7 +2525,6 @@ static void __exit exit_nfs_fs(void)
        nfs_destroy_inodecache();
        nfs_destroy_nfspagecache();
        unregister_pernet_subsys(&nfs_net_ops);
-       rpc_proc_unregister(&init_net, "nfs");
        unregister_nfs_fs();
        nfs_fs_proc_exit();
        nfsiod_stop();