Merge tag 'backlight-next-6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/lee...
[linux-block.git] / fs / fscache / proc.c
index 061df8f61ffc7127a91d3e689f22ba0a1fbd5b6d..dc3b0e9c8cce848a4777a5cfbdcf621b4a3688b7 100644 (file)
@@ -1,11 +1,11 @@
 // SPDX-License-Identifier: GPL-2.0-or-later
 /* FS-Cache statistics viewing interface
  *
- * Copyright (C) 2007 Red Hat, Inc. All Rights Reserved.
+ * Copyright (C) 2021 Red Hat, Inc. All Rights Reserved.
  * Written by David Howells (dhowells@redhat.com)
  */
 
-#define FSCACHE_DEBUG_LEVEL OPERATION
+#define FSCACHE_DEBUG_LEVEL CACHE
 #include <linux/module.h>
 #include <linux/proc_fs.h>
 #include <linux/seq_file.h>
  */
 int __init fscache_proc_init(void)
 {
-       _enter("");
-
        if (!proc_mkdir("fs/fscache", NULL))
                goto error_dir;
 
+       if (!proc_create_seq("fs/fscache/caches", S_IFREG | 0444, NULL,
+                            &fscache_caches_seq_ops))
+               goto error;
+
+       if (!proc_create_seq("fs/fscache/volumes", S_IFREG | 0444, NULL,
+                            &fscache_volumes_seq_ops))
+               goto error;
+
        if (!proc_create_seq("fs/fscache/cookies", S_IFREG | 0444, NULL,
                             &fscache_cookies_seq_ops))
-               goto error_cookies;
+               goto error;
 
 #ifdef CONFIG_FSCACHE_STATS
        if (!proc_create_single("fs/fscache/stats", S_IFREG | 0444, NULL,
-                       fscache_stats_show))
-               goto error_stats;
+                               fscache_stats_show))
+               goto error;
 #endif
 
-#ifdef CONFIG_FSCACHE_OBJECT_LIST
-       if (!proc_create("fs/fscache/objects", S_IFREG | 0444, NULL,
-                        &fscache_objlist_proc_ops))
-               goto error_objects;
-#endif
-
-       _leave(" = 0");
        return 0;
 
-#ifdef CONFIG_FSCACHE_OBJECT_LIST
-error_objects:
-#endif
-#ifdef CONFIG_FSCACHE_STATS
-       remove_proc_entry("fs/fscache/stats", NULL);
-error_stats:
-#endif
-       remove_proc_entry("fs/fscache/cookies", NULL);
-error_cookies:
+error:
        remove_proc_entry("fs/fscache", NULL);
 error_dir:
-       _leave(" = -ENOMEM");
        return -ENOMEM;
 }
 
@@ -60,12 +50,5 @@ error_dir:
  */
 void fscache_proc_cleanup(void)
 {
-#ifdef CONFIG_FSCACHE_OBJECT_LIST
-       remove_proc_entry("fs/fscache/objects", NULL);
-#endif
-#ifdef CONFIG_FSCACHE_STATS
-       remove_proc_entry("fs/fscache/stats", NULL);
-#endif
-       remove_proc_entry("fs/fscache/cookies", NULL);
-       remove_proc_entry("fs/fscache", NULL);
+       remove_proc_subtree("fs/fscache", NULL);
 }