mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 04:18:39 +08:00
netfs, fscache: Move fs/fscache/* into fs/netfs/
There's a problem with dependencies between netfslib and fscache as each wants to access some functions of the other. Deal with this by moving fs/fscache/* into fs/netfs/ and renaming those files to begin with "fscache-". For the moment, the moved files are changed as little as possible and an fscache module is still built. A subsequent patch will integrate them. Signed-off-by: David Howells <dhowells@redhat.com> Reviewed-by: Jeff Layton <jlayton@kernel.org> cc: Christian Brauner <christian@brauner.io> cc: linux-fsdevel@vger.kernel.org cc: linux-cachefs@redhat.com
This commit is contained in:
parent
2daa6404fd
commit
47757ea83a
21
MAINTAINERS
21
MAINTAINERS
@ -8133,6 +8133,19 @@ S: Supported
|
|||||||
F: fs/iomap/
|
F: fs/iomap/
|
||||||
F: include/linux/iomap.h
|
F: include/linux/iomap.h
|
||||||
|
|
||||||
|
FILESYSTEMS [NETFS LIBRARY]
|
||||||
|
M: David Howells <dhowells@redhat.com>
|
||||||
|
L: linux-cachefs@redhat.com (moderated for non-subscribers)
|
||||||
|
L: linux-fsdevel@vger.kernel.org
|
||||||
|
S: Supported
|
||||||
|
F: Documentation/filesystems/caching/
|
||||||
|
F: Documentation/filesystems/netfs_library.rst
|
||||||
|
F: fs/netfs/
|
||||||
|
F: include/linux/fscache*.h
|
||||||
|
F: include/linux/netfs.h
|
||||||
|
F: include/trace/events/fscache.h
|
||||||
|
F: include/trace/events/netfs.h
|
||||||
|
|
||||||
FINTEK F75375S HARDWARE MONITOR AND FAN CONTROLLER DRIVER
|
FINTEK F75375S HARDWARE MONITOR AND FAN CONTROLLER DRIVER
|
||||||
M: Riku Voipio <riku.voipio@iki.fi>
|
M: Riku Voipio <riku.voipio@iki.fi>
|
||||||
L: linux-hwmon@vger.kernel.org
|
L: linux-hwmon@vger.kernel.org
|
||||||
@ -8567,14 +8580,6 @@ F: Documentation/power/freezing-of-tasks.rst
|
|||||||
F: include/linux/freezer.h
|
F: include/linux/freezer.h
|
||||||
F: kernel/freezer.c
|
F: kernel/freezer.c
|
||||||
|
|
||||||
FS-CACHE: LOCAL CACHING FOR NETWORK FILESYSTEMS
|
|
||||||
M: David Howells <dhowells@redhat.com>
|
|
||||||
L: linux-cachefs@redhat.com (moderated for non-subscribers)
|
|
||||||
S: Supported
|
|
||||||
F: Documentation/filesystems/caching/
|
|
||||||
F: fs/fscache/
|
|
||||||
F: include/linux/fscache*.h
|
|
||||||
|
|
||||||
FSCRYPT: FILE SYSTEM LEVEL ENCRYPTION SUPPORT
|
FSCRYPT: FILE SYSTEM LEVEL ENCRYPTION SUPPORT
|
||||||
M: Eric Biggers <ebiggers@kernel.org>
|
M: Eric Biggers <ebiggers@kernel.org>
|
||||||
M: Theodore Y. Ts'o <tytso@mit.edu>
|
M: Theodore Y. Ts'o <tytso@mit.edu>
|
||||||
|
@ -140,7 +140,6 @@ source "fs/overlayfs/Kconfig"
|
|||||||
menu "Caches"
|
menu "Caches"
|
||||||
|
|
||||||
source "fs/netfs/Kconfig"
|
source "fs/netfs/Kconfig"
|
||||||
source "fs/fscache/Kconfig"
|
|
||||||
source "fs/cachefiles/Kconfig"
|
source "fs/cachefiles/Kconfig"
|
||||||
|
|
||||||
endmenu
|
endmenu
|
||||||
|
@ -60,7 +60,6 @@ obj-$(CONFIG_DLM) += dlm/
|
|||||||
|
|
||||||
# Do not add any filesystems before this line
|
# Do not add any filesystems before this line
|
||||||
obj-$(CONFIG_NETFS_SUPPORT) += netfs/
|
obj-$(CONFIG_NETFS_SUPPORT) += netfs/
|
||||||
obj-$(CONFIG_FSCACHE) += fscache/
|
|
||||||
obj-$(CONFIG_REISERFS_FS) += reiserfs/
|
obj-$(CONFIG_REISERFS_FS) += reiserfs/
|
||||||
obj-$(CONFIG_EXT4_FS) += ext4/
|
obj-$(CONFIG_EXT4_FS) += ext4/
|
||||||
# We place ext4 before ext2 so that clean ext3 root fs's do NOT mount using the
|
# We place ext4 before ext2 so that clean ext3 root fs's do NOT mount using the
|
||||||
|
@ -1,40 +0,0 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0-only
|
|
||||||
|
|
||||||
config FSCACHE
|
|
||||||
tristate "General filesystem local caching manager"
|
|
||||||
select NETFS_SUPPORT
|
|
||||||
help
|
|
||||||
This option enables a generic filesystem caching manager that can be
|
|
||||||
used by various network and other filesystems to cache data locally.
|
|
||||||
Different sorts of caches can be plugged in, depending on the
|
|
||||||
resources available.
|
|
||||||
|
|
||||||
See Documentation/filesystems/caching/fscache.rst for more information.
|
|
||||||
|
|
||||||
config FSCACHE_STATS
|
|
||||||
bool "Gather statistical information on local caching"
|
|
||||||
depends on FSCACHE && PROC_FS
|
|
||||||
select NETFS_STATS
|
|
||||||
help
|
|
||||||
This option causes statistical information to be gathered on local
|
|
||||||
caching and exported through file:
|
|
||||||
|
|
||||||
/proc/fs/fscache/stats
|
|
||||||
|
|
||||||
The gathering of statistics adds a certain amount of overhead to
|
|
||||||
execution as there are a quite a few stats gathered, and on a
|
|
||||||
multi-CPU system these may be on cachelines that keep bouncing
|
|
||||||
between CPUs. On the other hand, the stats are very useful for
|
|
||||||
debugging purposes. Saying 'Y' here is recommended.
|
|
||||||
|
|
||||||
See Documentation/filesystems/caching/fscache.rst for more information.
|
|
||||||
|
|
||||||
config FSCACHE_DEBUG
|
|
||||||
bool "Debug FS-Cache"
|
|
||||||
depends on FSCACHE
|
|
||||||
help
|
|
||||||
This permits debugging to be dynamically enabled in the local caching
|
|
||||||
management module. If this is set, the debugging output may be
|
|
||||||
enabled by setting bits in /sys/modules/fscache/parameter/debug.
|
|
||||||
|
|
||||||
See Documentation/filesystems/caching/fscache.rst for more information.
|
|
@ -1,16 +0,0 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0
|
|
||||||
#
|
|
||||||
# Makefile for general filesystem caching code
|
|
||||||
#
|
|
||||||
|
|
||||||
fscache-y := \
|
|
||||||
cache.o \
|
|
||||||
cookie.o \
|
|
||||||
io.o \
|
|
||||||
main.o \
|
|
||||||
volume.o
|
|
||||||
|
|
||||||
fscache-$(CONFIG_PROC_FS) += proc.o
|
|
||||||
fscache-$(CONFIG_FSCACHE_STATS) += stats.o
|
|
||||||
|
|
||||||
obj-$(CONFIG_FSCACHE) := fscache.o
|
|
@ -21,3 +21,42 @@ config NETFS_STATS
|
|||||||
multi-CPU system these may be on cachelines that keep bouncing
|
multi-CPU system these may be on cachelines that keep bouncing
|
||||||
between CPUs. On the other hand, the stats are very useful for
|
between CPUs. On the other hand, the stats are very useful for
|
||||||
debugging purposes. Saying 'Y' here is recommended.
|
debugging purposes. Saying 'Y' here is recommended.
|
||||||
|
|
||||||
|
config FSCACHE
|
||||||
|
tristate "General filesystem local caching manager"
|
||||||
|
select NETFS_SUPPORT
|
||||||
|
help
|
||||||
|
This option enables a generic filesystem caching manager that can be
|
||||||
|
used by various network and other filesystems to cache data locally.
|
||||||
|
Different sorts of caches can be plugged in, depending on the
|
||||||
|
resources available.
|
||||||
|
|
||||||
|
See Documentation/filesystems/caching/fscache.rst for more information.
|
||||||
|
|
||||||
|
config FSCACHE_STATS
|
||||||
|
bool "Gather statistical information on local caching"
|
||||||
|
depends on FSCACHE && PROC_FS
|
||||||
|
select NETFS_STATS
|
||||||
|
help
|
||||||
|
This option causes statistical information to be gathered on local
|
||||||
|
caching and exported through file:
|
||||||
|
|
||||||
|
/proc/fs/fscache/stats
|
||||||
|
|
||||||
|
The gathering of statistics adds a certain amount of overhead to
|
||||||
|
execution as there are a quite a few stats gathered, and on a
|
||||||
|
multi-CPU system these may be on cachelines that keep bouncing
|
||||||
|
between CPUs. On the other hand, the stats are very useful for
|
||||||
|
debugging purposes. Saying 'Y' here is recommended.
|
||||||
|
|
||||||
|
See Documentation/filesystems/caching/fscache.rst for more information.
|
||||||
|
|
||||||
|
config FSCACHE_DEBUG
|
||||||
|
bool "Debug FS-Cache"
|
||||||
|
depends on FSCACHE
|
||||||
|
help
|
||||||
|
This permits debugging to be dynamically enabled in the local caching
|
||||||
|
management module. If this is set, the debugging output may be
|
||||||
|
enabled by setting bits in /sys/modules/fscache/parameter/debug.
|
||||||
|
|
||||||
|
See Documentation/filesystems/caching/fscache.rst for more information.
|
||||||
|
@ -1,5 +1,17 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0
|
# SPDX-License-Identifier: GPL-2.0
|
||||||
|
|
||||||
|
fscache-y := \
|
||||||
|
fscache_cache.o \
|
||||||
|
fscache_cookie.o \
|
||||||
|
fscache_io.o \
|
||||||
|
fscache_main.o \
|
||||||
|
fscache_volume.o
|
||||||
|
|
||||||
|
fscache-$(CONFIG_PROC_FS) += fscache_proc.o
|
||||||
|
fscache-$(CONFIG_FSCACHE_STATS) += fscache_stats.o
|
||||||
|
|
||||||
|
obj-$(CONFIG_FSCACHE) := fscache.o
|
||||||
|
|
||||||
netfs-y := \
|
netfs-y := \
|
||||||
buffered_read.o \
|
buffered_read.o \
|
||||||
io.o \
|
io.o \
|
||||||
@ -9,4 +21,4 @@ netfs-y := \
|
|||||||
|
|
||||||
netfs-$(CONFIG_NETFS_STATS) += stats.o
|
netfs-$(CONFIG_NETFS_STATS) += stats.o
|
||||||
|
|
||||||
obj-$(CONFIG_NETFS_SUPPORT) := netfs.o
|
obj-$(CONFIG_NETFS_SUPPORT) += netfs.o
|
||||||
|
@ -5,9 +5,12 @@
|
|||||||
* Written by David Howells (dhowells@redhat.com)
|
* Written by David Howells (dhowells@redhat.com)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <linux/slab.h>
|
||||||
|
#include <linux/seq_file.h>
|
||||||
#include <linux/netfs.h>
|
#include <linux/netfs.h>
|
||||||
#include <linux/fscache.h>
|
#include <linux/fscache.h>
|
||||||
#include <trace/events/netfs.h>
|
#include <trace/events/netfs.h>
|
||||||
|
#include "fscache_internal.h"
|
||||||
|
|
||||||
#ifdef pr_fmt
|
#ifdef pr_fmt
|
||||||
#undef pr_fmt
|
#undef pr_fmt
|
||||||
@ -107,6 +110,7 @@ static inline bool netfs_is_cache_enabled(struct netfs_inode *ctx)
|
|||||||
/*
|
/*
|
||||||
* debug tracing
|
* debug tracing
|
||||||
*/
|
*/
|
||||||
|
#if 0
|
||||||
#define dbgprintk(FMT, ...) \
|
#define dbgprintk(FMT, ...) \
|
||||||
printk("[%-6.6s] "FMT"\n", current->comm, ##__VA_ARGS__)
|
printk("[%-6.6s] "FMT"\n", current->comm, ##__VA_ARGS__)
|
||||||
|
|
||||||
@ -143,3 +147,4 @@ do { \
|
|||||||
#define _leave(FMT, ...) no_printk("<== %s()"FMT"", __func__, ##__VA_ARGS__)
|
#define _leave(FMT, ...) no_printk("<== %s()"FMT"", __func__, ##__VA_ARGS__)
|
||||||
#define _debug(FMT, ...) no_printk(FMT, ##__VA_ARGS__)
|
#define _debug(FMT, ...) no_printk(FMT, ##__VA_ARGS__)
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
@ -8,8 +8,8 @@
|
|||||||
#include <linux/module.h>
|
#include <linux/module.h>
|
||||||
#include <linux/export.h>
|
#include <linux/export.h>
|
||||||
#include "internal.h"
|
#include "internal.h"
|
||||||
#define CREATE_TRACE_POINTS
|
//#define CREATE_TRACE_POINTS
|
||||||
#include <trace/events/netfs.h>
|
//#include <trace/events/netfs.h>
|
||||||
|
|
||||||
MODULE_DESCRIPTION("Network fs support");
|
MODULE_DESCRIPTION("Network fs support");
|
||||||
MODULE_AUTHOR("Red Hat, Inc.");
|
MODULE_AUTHOR("Red Hat, Inc.");
|
||||||
@ -18,3 +18,4 @@ MODULE_LICENSE("GPL");
|
|||||||
unsigned netfs_debug;
|
unsigned netfs_debug;
|
||||||
module_param_named(debug, netfs_debug, uint, S_IWUSR | S_IRUGO);
|
module_param_named(debug, netfs_debug, uint, S_IWUSR | S_IRUGO);
|
||||||
MODULE_PARM_DESC(netfs_debug, "Netfs support debugging mask");
|
MODULE_PARM_DESC(netfs_debug, "Netfs support debugging mask");
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user