Lines Matching +full:per +full:- +full:slice
1 .. SPDX-License-Identifier: GPL-2.0
9 - Overview.
10 - Per-inode context.
11 - Inode context helper functions.
12 - Buffered read helpers.
13 - Read helper functions.
14 - Read helper structures.
15 - Read helper operations.
16 - Read helper procedure.
17 - Read helper cache API.
33 Per-Inode Context
76 ------------------------------
78 To help deal with the per-inode context, a number helper functions are
98 The library provides a set of read helpers that handle the ->read_folio(),
99 ->readahead() and much of the ->write_begin() VM operations and translate them
116 * Handle local caching, allowing cached data and server-read data to be
133 ---------------------
149 state in the per-inode context.
151 For ->readahead() and ->read_folio(), the network filesystem just point directly
152 at the corresponding read helper; whereas for ->write_begin(), it may be a
161 If an error occurs, the ->free_request() will be called to clean up the
174 the operation was asynchronous (ie. whether the follow-on processing can be
179 ----------------------
203 may or may not point to inode->i_data.
218 may be altered by the ->expand_readahead() op.
258 The file position of the start of this slice of the read request and the
263 The amount of data transferred so far of the length of this slice. The
265 slice. If a short read occurs, the helpers will call again, having updated
275 This can be set to indicate that the remainder of the slice, from
285 A number allocated to this slice that can be displayed in trace lines for
290 ----------------------
327 The cache gets to store its state in ->cache_resources and must set a table
342 Expansion is communicated by changing ->start and ->len in the request
343 structure. Note that if any change is made, ->len must be increased by at
344 least as much as ->start is reduced.
358 reading. In the subrequest, ->start, ->len and ->transferred indicate what
364 uptodate, unlocking them or dropping their refs - the helpers need to deal
397 ---------------------
413 * The network filesystem gets to clamp the size of each slice if it is to be
417 clears the slice as appropriate.
419 * The next slice begins at the end of the last one.
436 end of the slice instead of reissuing.
457 ---------------------
463 The network filesystem's ->begin_cache_operation() method is called to set up a
542 to indicate whether the slice should just be cleared or whether it should be
543 downloaded from the server or read from the cache - or whether slicing
548 [Required] Called to configure the next slice of a request. ->start and
549 ->len in the subrequest indicate where and how big the next slice can be;
573 caller is certain that no data has been written to that region - for example
596 It returns 0 if some data was found, -ENODATA if there was no usable data
597 within the region or -ENOBUFS if there is no caching on this file.
608 .. kernel-doc:: include/linux/netfs.h
609 .. kernel-doc:: fs/netfs/buffered_read.c
610 .. kernel-doc:: fs/netfs/io.c