Lines Matching refs:page

33 struct page *ecryptfs_get_locked_page(struct inode *inode, loff_t index)  in ecryptfs_get_locked_page()
35 struct page *page = read_mapping_page(inode->i_mapping, index, NULL); in ecryptfs_get_locked_page() local
36 if (!IS_ERR(page)) in ecryptfs_get_locked_page()
37 lock_page(page); in ecryptfs_get_locked_page()
38 return page; in ecryptfs_get_locked_page()
52 static int ecryptfs_writepage(struct page *page, struct writeback_control *wbc) in ecryptfs_writepage() argument
56 rc = ecryptfs_encrypt_page(page); in ecryptfs_writepage()
59 "page (upper index [0x%.16lx])\n", page->index); in ecryptfs_writepage()
60 ClearPageUptodate(page); in ecryptfs_writepage()
63 SetPageUptodate(page); in ecryptfs_writepage()
65 unlock_page(page); in ecryptfs_writepage()
109 ecryptfs_copy_up_encrypted_with_header(struct page *page, in ecryptfs_copy_up_encrypted_with_header() argument
118 loff_t view_extent_num = ((((loff_t)page->index) in ecryptfs_copy_up_encrypted_with_header()
128 page_virt = kmap_atomic(page); in ecryptfs_copy_up_encrypted_with_header()
135 page_virt, page->mapping->host); in ecryptfs_copy_up_encrypted_with_header()
142 flush_dcache_page(page); in ecryptfs_copy_up_encrypted_with_header()
155 page, (lower_offset >> PAGE_SHIFT), in ecryptfs_copy_up_encrypted_with_header()
157 crypt_stat->extent_size, page->mapping->host); in ecryptfs_copy_up_encrypted_with_header()
183 struct page *page = &folio->page; in ecryptfs_read_folio() local
185 &ecryptfs_inode_to_private(page->mapping->host)->crypt_stat; in ecryptfs_read_folio()
189 rc = ecryptfs_read_lower_page_segment(page, page->index, 0, in ecryptfs_read_folio()
191 page->mapping->host); in ecryptfs_read_folio()
194 rc = ecryptfs_copy_up_encrypted_with_header(page, in ecryptfs_read_folio()
207 page, page->index, 0, PAGE_SIZE, in ecryptfs_read_folio()
208 page->mapping->host); in ecryptfs_read_folio()
216 rc = ecryptfs_decrypt_page(page); in ecryptfs_read_folio()
225 ClearPageUptodate(page); in ecryptfs_read_folio()
227 SetPageUptodate(page); in ecryptfs_read_folio()
229 page->index); in ecryptfs_read_folio()
230 unlock_page(page); in ecryptfs_read_folio()
237 static int fill_zeros_to_end_of_page(struct page *page, unsigned int to) in fill_zeros_to_end_of_page() argument
239 struct inode *inode = page->mapping->host; in fill_zeros_to_end_of_page()
242 if ((i_size_read(inode) / PAGE_SIZE) != page->index) in fill_zeros_to_end_of_page()
247 zero_user_segment(page, end_byte_in_page, PAGE_SIZE); in fill_zeros_to_end_of_page()
269 struct page **pagep, void **fsdata) in ecryptfs_write_begin()
272 struct page *page; in ecryptfs_write_begin() local
276 page = grab_cache_page_write_begin(mapping, index); in ecryptfs_write_begin()
277 if (!page) in ecryptfs_write_begin()
279 *pagep = page; in ecryptfs_write_begin()
282 if (!PageUptodate(page)) { in ecryptfs_write_begin()
288 page, index, 0, PAGE_SIZE, mapping->host); in ecryptfs_write_begin()
293 ClearPageUptodate(page); in ecryptfs_write_begin()
296 SetPageUptodate(page); in ecryptfs_write_begin()
300 page, crypt_stat); in ecryptfs_write_begin()
308 ClearPageUptodate(page); in ecryptfs_write_begin()
311 SetPageUptodate(page); in ecryptfs_write_begin()
314 page, index, 0, PAGE_SIZE, in ecryptfs_write_begin()
320 ClearPageUptodate(page); in ecryptfs_write_begin()
323 SetPageUptodate(page); in ecryptfs_write_begin()
327 >= i_size_read(page->mapping->host)) { in ecryptfs_write_begin()
328 zero_user(page, 0, PAGE_SIZE); in ecryptfs_write_begin()
329 SetPageUptodate(page); in ecryptfs_write_begin()
331 rc = ecryptfs_decrypt_page(page); in ecryptfs_write_begin()
336 __func__, page->index, rc); in ecryptfs_write_begin()
337 ClearPageUptodate(page); in ecryptfs_write_begin()
340 SetPageUptodate(page); in ecryptfs_write_begin()
347 if (prev_page_end_size > i_size_read(page->mapping->host)) { in ecryptfs_write_begin()
363 zero_user(page, 0, PAGE_SIZE); in ecryptfs_write_begin()
366 unlock_page(page); in ecryptfs_write_begin()
367 put_page(page); in ecryptfs_write_begin()
467 struct page *page, void *fsdata) in ecryptfs_write_end() argument
480 rc = ecryptfs_write_lower_page_segment(ecryptfs_inode, page, 0, in ecryptfs_write_end()
489 if (!PageUptodate(page)) { in ecryptfs_write_end()
494 SetPageUptodate(page); in ecryptfs_write_end()
497 rc = fill_zeros_to_end_of_page(page, to); in ecryptfs_write_end()
503 rc = ecryptfs_encrypt_page(page); in ecryptfs_write_end()
522 unlock_page(page); in ecryptfs_write_end()
523 put_page(page); in ecryptfs_write_end()