• Home
  • Raw
  • Download

Lines Matching +full:cache +full:-

2 	       CacheFiles: CACHE ON ALREADY MOUNTED FILESYSTEM
13 (*) Starting the cache.
17 (*) Cache culling.
19 (*) Cache structure.
34 CacheFiles is a caching backend that's meant to use as a cache a directory on
37 CacheFiles uses a userspace daemon to do some of the cache management - such as
41 The filesystem and data integrity of the cache are only as good as those of the
46 CacheFiles creates a misc character device - "/dev/cachefiles" - that is used
48 and while it is open, a cache is at least partially in existence. The daemon
49 opens this and sends commands down it to control the cache.
51 CacheFiles is currently limited to a single cache.
54 the filesystem, shrinking the cache by culling the objects it contains to make
55 space if necessary - see the "Cache Culling" section. This means it can be
66 available in the system and in the cache filesystem:
68 - dnotify.
70 - extended attributes (xattrs).
72 - openat() and friends.
74 - bmap() support on files in the filesystem (FIBMAP ioctl).
76 - The use of bmap() to detect a partial page at the end of the file.
79 filesystems being used as a cache.
86 The cache is configured by a script in /etc/cachefilesd.conf. These commands
87 set up cache ready for use. The following script commands are available:
104 Specify the directory containing the root of the cache. Mandatory.
108 Specify a tag to FS-Cache to use in distinguishing multiple caches.
127 STARTING THE CACHE
130 The cache is started by running the daemon. The daemon opens the cache device,
131 configures the cache and tells it to begin caching. At that point the cache
132 binds to fscache and the cache becomes live.
136 /sbin/cachefilesd [-d]* [-s] [-n] [-f <configfile>]
140 (*) -d
145 (*) -s
149 (*) -n
153 (*) -f <configfile>
162 Do not mount other things within the cache as this will cause problems. The
163 kernel module contains its own very cut-down path walking facility that ignores
166 Do not create, rename or unlink files and directories in the cache while the
167 cache is active, as this may cause the state to become uncertain.
169 Renaming files in the cache might make objects appear to be other objects (the
172 Do not change or remove the extended attributes attached to cache files by the
173 cache as this will cause the cache state management to get confused.
175 Do not create files or directories in the cache, lest the cache get confused or
178 Do not chmod files in the cache. The module creates things with minimal
183 CACHE CULLING
186 The cache may need culling occasionally to make space. This involves
187 discarding objects from the cache that have been used less recently than
191 Cache culling is done on the basis of the percentage of blocks and the
198 If the amount of free space and the number of available files in the cache
205 cache falls below either of these limits, then culling is started.
211 cache falls below either of these limits, then no further allocation of
223 The userspace daemon scans the cache to build up a table of cullable objects.
224 These are then culled in least recently used order. A new scan of the cache is
230 CACHE STRUCTURE
236 (*) cache/
240 The active cache objects all reside in the first directory. The CacheFiles
249 "J...". Note that the "cache/" directory is itself a special index.
268 cache/@4a/I03nfs/@30/Ji000000000000000--fHg8hi8400
269 cache/@4a/I03nfs/@30/Ji000000000000000--fHg8hi8400/@75/Es0g000w...DB1ry
270 cache/@4a/I03nfs/@30/Ji000000000000000--fHg8hi8400/@75/Es0g000w...N22ry
271 cache/@4a/I03nfs/@30/Ji000000000000000--fHg8hi8400/@75/Es0g000w...FP1ry
288 "base-64" encode ones that aren't directly suitable. The two versions of
300 Each object in the cache has an extended attribute label that holds the object
302 the netfs. The latter is used to detect stale objects in the cache and update
306 Note that CacheFiles will erase from the cache any file it doesn't recognise or
319 security context that is not appropriate for accessing the cache - either
320 because the files in the cache are inaccessible to that process, or because if
321 the process creates a file in the cache, that file may be inaccessible to other
325 fsgid and actor security label) that the process acts as - without changing the
330 When the CacheFiles module is asked to bind to its cache, it:
332 (1) Finds the security label attached to the root cache directory and uses
351 type_transition <daemon's-ID> kernel_t : process <module's-ID>;
359 and directories in the cache, to find and access directories and files in the
360 cache, to set and access extended attributes on cache objects, and to read and
361 write files in the cache.
365 not read or write files in the cache, and so it is precluded from accessing the
366 data cached therein; nor is it permitted to create new files in the cache.
371 http://people.redhat.com/~dhowells/fscache/cachefilesd-0.8.tar.bz2
381 If a non-RPM based system is being used, then copy the above files to their own
384 make -f /usr/share/selinux/devel/Makefile
385 semodule -i cachefilesd.pp
387 You will need checkpolicy and selinux-policy-devel installed prior to the
391 By default, the cache is located in /var/fscache, but if it is desirable that
394 cache.
396 For instructions on how to add an auxiliary policy to enable the cache to be
399 /usr/share/doc/cachefilesd-*/move-cache.txt
410 its own task_security structure, and redirects current->cred to point to it
415 may deny the CacheFiles access to the cache data because under some
422 preventing other processes from accessing the cache - including CacheFiles's
423 cache management daemon (cachefilesd).
426 issued the system call. We can't, however, just do an in-place change of the
432 objective security (task->real_cred) and the subjective security (task->cred).
452 If FS-Cache is compiled with the following option enabled:
465 between 0 jiffies and HZ-1 jiffies a variety of tasks took to run. The