Lines Matching +full:start +full:- +full:up

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
108 * Allow the netfs to arbitrarily split reads up into pieces, even ones that
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 ----------------------
189 loff_t start;
203 may or may not point to inode->i_data.
214 * ``start``
217 The file position of the start of the read request and the length. These
218 may be altered by the ->expand_readahead() op.
222 The size of the file at the start of the request.
240 loff_t start;
255 * ``start``
258 The file position of the start of this slice of the read request and the
264 network filesystem or cache should start the operation this far into the
290 ----------------------
317 filesystem can clean up any state it has attached there.
327 Expansion is communicated by changing ->start and ->len in the request
328 structure. Note that if any change is made, ->len must be increased by at
329 least as much as ->start is reduced.
334 subrequest. The filesystem can use this, for example, to chop up a request
343 reading. In the subrequest, ->start, ->len and ->transferred indicate what
349 uptodate, unlocking them or dropping their refs - the helpers need to deal
382 ---------------------
386 * Set up the request.
438 * The request structures will be cleaned up when everything has completed.
442 ---------------------
496 loff_t start, size_t len, size_t granularity,
510 [Required] Called to clean up the resources at the end of the read request.
518 The function is passed poiners to the start and length in its parameters,
519 plus the size of the file for reference, and adjusts the start and length
528 downloaded from the server or read from the cache - or whether slicing
529 should be given up at the current point.
533 [Required] Called to configure the next slice of a request. ->start and
534 ->len in the subrequest indicate where and how big the next slice can be;
539 [Required] Called to read from the cache. The start file offset is given
541 given a hint requesting that it seek forward from that start position for
558 caller is certain that no data has been written to that region - for example
563 [Required] Called to write to the cache. The start file offset is given
575 particular region of the cache. The start and length of the region to be
577 to be aligned. The function passes back the start and length of the data,
581 It returns 0 if some data was found, -ENODATA if there was no usable data
582 within the region or -ENOBUFS if there is no caching on this file.
593 .. kernel-doc:: include/linux/netfs.h
594 .. kernel-doc:: fs/netfs/buffered_read.c