]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
kclient: tear down /proc/fs/ceph on exit
authorSage Weil <sage@newdream.net>
Wed, 30 Apr 2008 14:14:51 +0000 (07:14 -0700)
committerSage Weil <sage@newdream.net>
Wed, 30 Apr 2008 14:14:51 +0000 (07:14 -0700)
src/kernel/proc.c
src/kernel/super.c
src/kernel/super.h

index 6b01573dd4b534ad85284f2013a8832e354f670d..6c450da2ed63e7d557ff19230f00d4de03d6b679 100644 (file)
@@ -58,7 +58,7 @@ static int ceph_debug_level_write(struct file *file, const char __user *buffer,
 
 static struct proc_dir_entry *proc_fs_ceph;
 
-void ceph_fs_proc_init(void)
+void ceph_proc_init(void)
 {
        struct proc_dir_entry *pde;
 
@@ -85,3 +85,11 @@ void ceph_fs_proc_init(void)
                pde->write_proc = ceph_debug_level_write;
 
 }
+
+void ceph_proc_cleanup()
+{
+       remove_proc_entry("debug", proc_fs_ceph);
+       remove_proc_entry("debug_msgr", proc_fs_ceph);
+       remove_proc_entry("debug_console", proc_fs_ceph);
+       remove_proc_entry("ceph", proc_root_fs);
+}
index b60f6ed7bb2ff2949182341747ffb19e410f7975..1469cfffcd0607ca3bdbe781adce2c9254bc17df 100644 (file)
@@ -921,8 +921,7 @@ static int __init init_ceph(void)
        if (!ceph_kobj)
                return -ENOMEM;
 #endif
-       
-       ceph_fs_proc_init();
+       ceph_proc_init();
 
        ret = init_inodecache();
        if (ret)
@@ -942,6 +941,7 @@ static void __exit exit_ceph(void)
        kobject_put(ceph_kobj);
        ceph_kobj = 0;
 #endif
+       ceph_proc_cleanup();
 
        unregister_filesystem(&ceph_fs_type);
        destroy_inodecache();
index af02fc0033dd440f43ad734cf2159ab4df97f730..29d396f51fb75aeb1d29719897c22385311dc9b3 100644 (file)
@@ -425,6 +425,7 @@ static inline void ceph_init_dentry(struct dentry *dentry) {
 extern const struct export_operations ceph_export_ops;
 
 /* proc.c */
-extern void ceph_fs_proc_init(void);
+extern void ceph_proc_init(void);
+extern void ceph_proc_cleanup(void);
 
 #endif /* _FS_CEPH_SUPER_H */