Lines Matching refs:folio
19 struct folio *folio; in netfs_rreq_unlock_folios() local
47 xas_for_each(&xas, folio, last_page) { in netfs_rreq_unlock_folios()
51 if (xas_retry(&xas, folio)) in netfs_rreq_unlock_folios()
54 pg_end = folio_pos(folio) + folio_size(folio) - 1; in netfs_rreq_unlock_folios()
64 folio_start_fscache(folio); in netfs_rreq_unlock_folios()
84 flush_dcache_folio(folio); in netfs_rreq_unlock_folios()
85 folio_mark_uptodate(folio); in netfs_rreq_unlock_folios()
89 if (folio_index(folio) == rreq->no_unlock_folio && in netfs_rreq_unlock_folios()
93 folio_unlock(folio); in netfs_rreq_unlock_folios()
220 int netfs_read_folio(struct file *file, struct folio *folio) in netfs_read_folio() argument
222 struct address_space *mapping = folio_file_mapping(folio); in netfs_read_folio()
227 _enter("%lx", folio_index(folio)); in netfs_read_folio()
230 folio_file_pos(folio), folio_size(folio), in netfs_read_folio()
250 folio_unlock(folio); in netfs_read_folio()
270 static bool netfs_skip_folio_read(struct folio *folio, loff_t pos, size_t len, in netfs_skip_folio_read() argument
273 struct inode *inode = folio_inode(folio); in netfs_skip_folio_read()
275 size_t offset = offset_in_folio(folio, pos); in netfs_skip_folio_read()
276 size_t plen = folio_size(folio); in netfs_skip_folio_read()
281 zero_user_segment(&folio->page, 0, plen); in netfs_skip_folio_read()
282 folio_mark_uptodate(folio); in netfs_skip_folio_read()
300 zero_user_segments(&folio->page, 0, offset, offset + len, plen); in netfs_skip_folio_read()
339 loff_t pos, unsigned int len, struct folio **_folio, in netfs_write_begin()
343 struct folio *folio; in netfs_write_begin() local
351 folio = __filemap_get_folio(mapping, index, fgp_flags, in netfs_write_begin()
353 if (!folio) in netfs_write_begin()
358 ret = ctx->ops->check_write_begin(file, pos, len, &folio, _fsdata); in netfs_write_begin()
363 if (!folio) in netfs_write_begin()
367 if (folio_test_uptodate(folio)) in netfs_write_begin()
375 netfs_skip_folio_read(folio, pos, len, false)) { in netfs_write_begin()
381 folio_file_pos(folio), folio_size(folio), in netfs_write_begin()
387 rreq->no_unlock_folio = folio_index(folio); in netfs_write_begin()
402 ractl._nr_pages = folio_nr_pages(folio); in netfs_write_begin()
406 folio_get(folio); in netfs_write_begin()
415 ret = folio_wait_fscache_killable(folio); in netfs_write_begin()
419 *_folio = folio; in netfs_write_begin()
426 if (folio) { in netfs_write_begin()
427 folio_unlock(folio); in netfs_write_begin()
428 folio_put(folio); in netfs_write_begin()