Commit 7eb5b3e3 authored by David Howells's avatar David Howells
Browse files

netfs, fscache: Move /proc/fs/fscache to /proc/fs/netfs and put in a symlink



Rename /proc/fs/fscache to "netfs" and make a symlink from fscache to that.

Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
cc: Christian Brauner <christian@brauner.io>
cc: linux-fsdevel@vger.kernel.org
cc: linux-cachefs@redhat.com
parent 4498a8ec
Loading
Loading
Loading
Loading
+2 −6
Original line number Diff line number Diff line
@@ -62,7 +62,7 @@ unsigned int fscache_hash(unsigned int salt, const void *data, size_t len)
/*
 * initialise the fs caching module
 */
static int __init fscache_init(void)
int __init fscache_init(void)
{
	int ret = -ENOMEM;

@@ -94,12 +94,10 @@ static int __init fscache_init(void)
	return ret;
}

fs_initcall(fscache_init);

/*
 * clean up on module removal
 */
static void __exit fscache_exit(void)
void __exit fscache_exit(void)
{
	_enter("");

@@ -108,5 +106,3 @@ static void __exit fscache_exit(void)
	destroy_workqueue(fscache_wq);
	pr_notice("FS-Cache unloaded\n");
}

module_exit(fscache_exit);
+8 −15
Original line number Diff line number Diff line
@@ -12,41 +12,34 @@
#include "internal.h"

/*
 * initialise the /proc/fs/fscache/ directory
 * Add files to /proc/fs/netfs/.
 */
int __init fscache_proc_init(void)
{
	if (!proc_mkdir("fs/fscache", NULL))
		goto error_dir;
	if (!proc_symlink("fs/fscache", NULL, "../netfs"))
		goto error_sym;

	if (!proc_create_seq("fs/fscache/caches", S_IFREG | 0444, NULL,
	if (!proc_create_seq("fs/netfs/caches", S_IFREG | 0444, NULL,
			     &fscache_caches_seq_ops))
		goto error;

	if (!proc_create_seq("fs/fscache/volumes", S_IFREG | 0444, NULL,
	if (!proc_create_seq("fs/netfs/volumes", S_IFREG | 0444, NULL,
			     &fscache_volumes_seq_ops))
		goto error;

	if (!proc_create_seq("fs/fscache/cookies", S_IFREG | 0444, NULL,
	if (!proc_create_seq("fs/netfs/cookies", S_IFREG | 0444, NULL,
			     &fscache_cookies_seq_ops))
		goto error;

#ifdef CONFIG_FSCACHE_STATS
	if (!proc_create_single("fs/fscache/stats", S_IFREG | 0444, NULL,
				fscache_stats_show))
		goto error;
#endif

	return 0;

error:
	remove_proc_entry("fs/fscache", NULL);
error_dir:
error_sym:
	return -ENOMEM;
}

/*
 * clean up the /proc/fs/fscache/ directory
 * Clean up the /proc/fs/fscache symlink.
 */
void fscache_proc_cleanup(void)
{
+1 −3
Original line number Diff line number Diff line
@@ -52,7 +52,7 @@ EXPORT_SYMBOL(fscache_n_culled);
/*
 * display the general statistics
 */
int fscache_stats_show(struct seq_file *m, void *v)
int fscache_stats_show(struct seq_file *m)
{
	seq_puts(m, "FS-Cache statistics\n");
	seq_printf(m, "Cookies: n=%d v=%d vcol=%u voom=%u\n",
@@ -96,7 +96,5 @@ int fscache_stats_show(struct seq_file *m, void *v)
	seq_printf(m, "IO     : rd=%u wr=%u\n",
		   atomic_read(&fscache_n_read),
		   atomic_read(&fscache_n_write));

	netfs_stats_show(m);
	return 0;
}
+11 −1
Original line number Diff line number Diff line
@@ -76,6 +76,7 @@ extern atomic_t netfs_n_rh_write_done;
extern atomic_t netfs_n_rh_write_failed;
extern atomic_t netfs_n_rh_write_zskip;

int netfs_stats_show(struct seq_file *m, void *v);

static inline void netfs_stat(atomic_t *stat)
{
@@ -166,6 +167,13 @@ static inline void fscache_see_cookie(struct fscache_cookie *cookie,
 * fscache-main.c
 */
extern unsigned int fscache_hash(unsigned int salt, const void *data, size_t len);
#ifdef CONFIG_FSCACHE
int __init fscache_init(void);
void __exit fscache_exit(void);
#else
static inline int fscache_init(void) { return 0; }
static inline void fscache_exit(void) {}
#endif

/*
 * fscache-proc.c
@@ -216,12 +224,14 @@ static inline void fscache_stat_d(atomic_t *stat)

#define __fscache_stat(stat) (stat)

int fscache_stats_show(struct seq_file *m, void *v);
int fscache_stats_show(struct seq_file *m);
#else

#define __fscache_stat(stat) (NULL)
#define fscache_stat(stat) do {} while (0)
#define fscache_stat_d(stat) do {} while (0)

static inline int fscache_stats_show(struct seq_file *m) { return 0; }
#endif

/*
+33 −0
Original line number Diff line number Diff line
@@ -7,6 +7,8 @@

#include <linux/module.h>
#include <linux/export.h>
#include <linux/proc_fs.h>
#include <linux/seq_file.h>
#include "internal.h"
#define CREATE_TRACE_POINTS
#include <trace/events/netfs.h>
@@ -19,3 +21,34 @@ unsigned netfs_debug;
module_param_named(debug, netfs_debug, uint, S_IWUSR | S_IRUGO);
MODULE_PARM_DESC(netfs_debug, "Netfs support debugging mask");

static int __init netfs_init(void)
{
	int ret = -ENOMEM;

	if (!proc_mkdir("fs/netfs", NULL))
		goto error;

#ifdef CONFIG_FSCACHE_STATS
	if (!proc_create_single("fs/netfs/stats", S_IFREG | 0444, NULL,
				netfs_stats_show))
		goto error_proc;
#endif

	ret = fscache_init();
	if (ret < 0)
		goto error_proc;
	return 0;

error_proc:
	remove_proc_entry("fs/netfs", NULL);
error:
	return ret;
}
fs_initcall(netfs_init);

static void __exit netfs_exit(void)
{
	fscache_exit();
	remove_proc_entry("fs/netfs", NULL);
}
module_exit(netfs_exit);
Loading