• Home
  • Raw
  • Download

Lines Matching full:-

1 .. SPDX-License-Identifier: GPL-2.0
13 FS-Cache mediates between cache backends (such as CacheFS) and network
16 +---------+
17 | | +--------------+
18 | NFS |--+ | |
19 | | | +-->| CacheFS |
20 +---------+ | +----------+ | | /dev/hda5 |
21 | | | | +--------------+
22 +---------+ +-->| | |
23 | | | |--+
24 | AFS |----->| FS-Cache |
25 | | | |--+
26 +---------+ +-->| | |
27 | | | | +--------------+
28 +---------+ | +----------+ | | |
29 | | | +-->| CacheFiles |
30 | ISOFS |--+ | /var/cache |
31 | | +--------------+
32 +---------+
34 Or to look at it another way, FS-Cache is a module that provides a caching
38 +---------+
42 +---------+
46 | +----------+
48 +---------+ | |
50 | NFS |----->| FS-Cache |
51 | | | |--+
52 +---------+ | | | +--------------+ +--------------+
54 V +----------+ +-->| CacheFiles |-->| Ext3 |
55 +---------+ | /var/cache | | /dev/sda6 |
56 | | +--------------+ +--------------+
59 +---------+ +--------------+ |
64 +---------+ +--------------+
68 +---------+ +--------------+
71 FS-Cache does not follow the idea of completely loading every netfs file
84 one-off access of a small portion of it (such as might be done with the
91 FS-Cache provides the following facilities:
105 netfs. The simplest cookie is just a NULL pointer - indicating nothing
108 (6) The netfs is allowed to propose - dynamically - any index hierarchy it
114 indicates that page A is at index B of the data-file represented by cookie
120 (8) Cookies can be "retired" upon release. At this point FS-Cache will mark
131 FS-Cache maintains a virtual indexing tree in which all indices, files, objects
137 +------------------------------------+
141 +--------------------------+ +-----------+
145 +------------+ +---------------+ +----------+
149 +---+---+ +-----+ +---+ +------+------+ +-----+----+
153 PG0 +-------+
157 +---+---+
164 * The NFS primary index contains per-server indices. Each server index is
168 attribute objects themselves have page-array contents.
170 * The AFS primary index contains per-cell indices. Each cell index contains
171 per-logical-volume indices. Each of volume index contains up to three
172 indices for the read-write, read-only and backup mirrors of those volumes.
176 The very top index is the FS-Cache master index in which individual netfs's
180 children. Any index with non-index object children will be assumed to only
184 The netfs API to FS-Cache can be found in:
186 Documentation/filesystems/caching/netfs-api.rst
188 The cache backend API to FS-Cache can be found in:
190 Documentation/filesystems/caching/backend-api.rst
201 If FS-Cache is compiled with the following options enabled::
210 ----------------------
212 This shows counts of a number of events that can happen in FS-Cache:
214 +--------------+-------+-------------------------------------------------------+
218 + +-------+-------------------------------------------------------+
220 + +-------+-------------------------------------------------------+
222 +--------------+-------+-------------------------------------------------------+
224 + +-------+-------------------------------------------------------+
226 + +-------+-------------------------------------------------------+
228 + +-------+-------------------------------------------------------+
230 +--------------+-------+-------------------------------------------------------+
232 + +-------+-------------------------------------------------------+
234 + +-------+-------------------------------------------------------+
236 + +-------+-------------------------------------------------------+
238 +--------------+-------+-------------------------------------------------------+
241 +--------------+-------+-------------------------------------------------------+
243 + +-------+-------------------------------------------------------+
245 + +-------+-------------------------------------------------------+
247 + +-------+-------------------------------------------------------+
249 + +-------+-------------------------------------------------------+
251 + +-------+-------------------------------------------------------+
253 +--------------+-------+-------------------------------------------------------+
255 + +-------+-------------------------------------------------------+
257 + +-------+-------------------------------------------------------+
259 + +-------+-------------------------------------------------------+
261 + +-------+-------------------------------------------------------+
263 +--------------+-------+-------------------------------------------------------+
265 + +-------+-------------------------------------------------------+
267 + +-------+-------------------------------------------------------+
269 +--------------+-------+-------------------------------------------------------+
271 + +-------+-------------------------------------------------------+
273 + +-------+-------------------------------------------------------+
275 +--------------+-------+-------------------------------------------------------+
277 + +-------+-------------------------------------------------------+
279 + +-------+-------------------------------------------------------+
280 | |nbf=N |Number of attr changed rejected -ENOBUFS |
281 + +-------+-------------------------------------------------------+
282 | |oom=N |Number of attr changed failed -ENOMEM |
283 + +-------+-------------------------------------------------------+
285 +--------------+-------+-------------------------------------------------------+
287 + +-------+-------------------------------------------------------+
289 + +-------+-------------------------------------------------------+
291 + +-------+-------------------------------------------------------+
292 | |nbf=N |Number of alloc reqs rejected -ENOBUFS |
293 + +-------+-------------------------------------------------------+
294 | |int=N |Number of alloc reqs aborted -ERESTARTSYS |
295 + +-------+-------------------------------------------------------+
297 + +-------+-------------------------------------------------------+
299 + +-------+-------------------------------------------------------+
301 +--------------+-------+-------------------------------------------------------+
303 + +-------+-------------------------------------------------------+
305 + +-------+-------------------------------------------------------+
307 + +-------+-------------------------------------------------------+
308 | |nod=N |Number of retr reqs returned -ENODATA |
309 + +-------+-------------------------------------------------------+
310 | |nbf=N |Number of retr reqs rejected -ENOBUFS |
311 + +-------+-------------------------------------------------------+
312 | |int=N |Number of retr reqs aborted -ERESTARTSYS |
313 + +-------+-------------------------------------------------------+
314 | |oom=N |Number of retr reqs failed -ENOMEM |
315 + +-------+-------------------------------------------------------+
317 + +-------+-------------------------------------------------------+
319 + +-------+-------------------------------------------------------+
321 +--------------+-------+-------------------------------------------------------+
323 + +-------+-------------------------------------------------------+
325 + +-------+-------------------------------------------------------+
327 + +-------+-------------------------------------------------------+
328 | |nbf=N |Number of store reqs rejected -ENOBUFS |
329 + +-------+-------------------------------------------------------+
330 | |oom=N |Number of store reqs failed -ENOMEM |
331 + +-------+-------------------------------------------------------+
333 + +-------+-------------------------------------------------------+
335 + +-------+-------------------------------------------------------+
337 + +-------+-------------------------------------------------------+
339 + +-------+-------------------------------------------------------+
341 +--------------+-------+-------------------------------------------------------+
344 + +-------+-------------------------------------------------------+
347 + +-------+-------------------------------------------------------+
348 | |bsy=N |Number of release reqs ignored due to in-progress store|
349 + +-------+-------------------------------------------------------+
351 +--------------+-------+-------------------------------------------------------+
353 + +-------+-------------------------------------------------------+
355 + +-------+-------------------------------------------------------+
357 + +-------+-------------------------------------------------------+
359 + +-------+-------------------------------------------------------+
362 + +-------+-------------------------------------------------------+
364 + +-------+-------------------------------------------------------+
366 + +-------+-------------------------------------------------------+
369 + +-------+-------------------------------------------------------+
370 | |gc=N |Number of deferred-release async ops garbage collected |
371 +--------------+-------+-------------------------------------------------------+
372 |CacheOp |alo=N |Number of in-progress alloc_object() cache ops |
373 + +-------+-------------------------------------------------------+
374 | |luo=N |Number of in-progress lookup_object() cache ops |
375 + +-------+-------------------------------------------------------+
376 | |luc=N |Number of in-progress lookup_complete() cache ops |
377 + +-------+-------------------------------------------------------+
378 | |gro=N |Number of in-progress grab_object() cache ops |
379 + +-------+-------------------------------------------------------+
380 | |upo=N |Number of in-progress update_object() cache ops |
381 + +-------+-------------------------------------------------------+
382 | |dro=N |Number of in-progress drop_object() cache ops |
383 + +-------+-------------------------------------------------------+
384 | |pto=N |Number of in-progress put_object() cache ops |
385 + +-------+-------------------------------------------------------+
386 | |syn=N |Number of in-progress sync_cache() cache ops |
387 + +-------+-------------------------------------------------------+
388 | |atc=N |Number of in-progress attr_changed() cache ops |
389 + +-------+-------------------------------------------------------+
390 | |rap=N |Number of in-progress read_or_alloc_page() cache ops |
391 + +-------+-------------------------------------------------------+
392 | |ras=N |Number of in-progress read_or_alloc_pages() cache ops |
393 + +-------+-------------------------------------------------------+
394 | |alp=N |Number of in-progress allocate_page() cache ops |
395 + +-------+-------------------------------------------------------+
396 | |als=N |Number of in-progress allocate_pages() cache ops |
397 + +-------+-------------------------------------------------------+
398 | |wrp=N |Number of in-progress write_page() cache ops |
399 + +-------+-------------------------------------------------------+
400 | |ucp=N |Number of in-progress uncache_page() cache ops |
401 + +-------+-------------------------------------------------------+
402 | |dsp=N |Number of in-progress dissociate_pages() cache ops |
403 +--------------+-------+-------------------------------------------------------+
406 + +-------+-------------------------------------------------------+
408 + +-------+-------------------------------------------------------+
410 + +-------+-------------------------------------------------------+
412 +--------------+-------+-------------------------------------------------------+
417 --------------------------
426 between 0 jiffies and HZ-1 jiffies a variety of tasks took to run. The
448 If CONFIG_FSCACHE_OBJECT_LIST is enabled, the FS-Cache facility will maintain a
488 TY Cookie type (IX - index, DT - data, hex - special)
536 If CONFIG_FSCACHE_DEBUG is enabled, the FS-Cache facility can have runtime