Lines Matching refs:page
46 struct page *ecryptfs_get_locked_page(struct file *file, loff_t index) in ecryptfs_get_locked_page()
51 struct page *page; in ecryptfs_get_locked_page() local
56 page = read_mapping_page(mapping, index, (void *)file); in ecryptfs_get_locked_page()
57 if (!IS_ERR(page)) in ecryptfs_get_locked_page()
58 lock_page(page); in ecryptfs_get_locked_page()
59 return page; in ecryptfs_get_locked_page()
68 static int ecryptfs_writepage(struct page *page, struct writeback_control *wbc) in ecryptfs_writepage() argument
72 rc = ecryptfs_encrypt_page(page); in ecryptfs_writepage()
75 "page (upper index [0x%.16x])\n", page->index); in ecryptfs_writepage()
76 ClearPageUptodate(page); in ecryptfs_writepage()
79 SetPageUptodate(page); in ecryptfs_writepage()
80 unlock_page(page); in ecryptfs_writepage()
125 ecryptfs_copy_up_encrypted_with_header(struct page *page, in ecryptfs_copy_up_encrypted_with_header() argument
134 loff_t view_extent_num = ((((loff_t)page->index) in ecryptfs_copy_up_encrypted_with_header()
145 page_virt = kmap_atomic(page, KM_USER0); in ecryptfs_copy_up_encrypted_with_header()
150 page_virt, page->mapping->host); in ecryptfs_copy_up_encrypted_with_header()
154 flush_dcache_page(page); in ecryptfs_copy_up_encrypted_with_header()
167 page, (lower_offset >> PAGE_CACHE_SHIFT), in ecryptfs_copy_up_encrypted_with_header()
169 crypt_stat->extent_size, page->mapping->host); in ecryptfs_copy_up_encrypted_with_header()
193 static int ecryptfs_readpage(struct file *file, struct page *page) in ecryptfs_readpage() argument
204 rc = ecryptfs_read_lower_page_segment(page, page->index, 0, in ecryptfs_readpage()
206 page->mapping->host); in ecryptfs_readpage()
209 rc = ecryptfs_copy_up_encrypted_with_header(page, in ecryptfs_readpage()
222 page, page->index, 0, PAGE_CACHE_SIZE, in ecryptfs_readpage()
223 page->mapping->host); in ecryptfs_readpage()
231 rc = ecryptfs_decrypt_page(page); in ecryptfs_readpage()
240 ClearPageUptodate(page); in ecryptfs_readpage()
242 SetPageUptodate(page); in ecryptfs_readpage()
244 page->index); in ecryptfs_readpage()
245 unlock_page(page); in ecryptfs_readpage()
252 static int fill_zeros_to_end_of_page(struct page *page, unsigned int to) in fill_zeros_to_end_of_page() argument
254 struct inode *inode = page->mapping->host; in fill_zeros_to_end_of_page()
257 if ((i_size_read(inode) / PAGE_CACHE_SIZE) != page->index) in fill_zeros_to_end_of_page()
262 zero_user_segment(page, end_byte_in_page, PAGE_CACHE_SIZE); in fill_zeros_to_end_of_page()
284 struct page **pagep, void **fsdata) in ecryptfs_write_begin()
287 struct page *page; in ecryptfs_write_begin() local
291 page = grab_cache_page_write_begin(mapping, index, flags); in ecryptfs_write_begin()
292 if (!page) in ecryptfs_write_begin()
294 *pagep = page; in ecryptfs_write_begin()
296 if (!PageUptodate(page)) { in ecryptfs_write_begin()
304 page, index, 0, PAGE_CACHE_SIZE, mapping->host); in ecryptfs_write_begin()
309 ClearPageUptodate(page); in ecryptfs_write_begin()
312 SetPageUptodate(page); in ecryptfs_write_begin()
316 page, crypt_stat); in ecryptfs_write_begin()
324 ClearPageUptodate(page); in ecryptfs_write_begin()
327 SetPageUptodate(page); in ecryptfs_write_begin()
330 page, index, 0, PAGE_CACHE_SIZE, in ecryptfs_write_begin()
336 ClearPageUptodate(page); in ecryptfs_write_begin()
339 SetPageUptodate(page); in ecryptfs_write_begin()
342 rc = ecryptfs_decrypt_page(page); in ecryptfs_write_begin()
346 __func__, page->index, rc); in ecryptfs_write_begin()
347 ClearPageUptodate(page); in ecryptfs_write_begin()
350 SetPageUptodate(page); in ecryptfs_write_begin()
357 if (prev_page_end_size > i_size_read(page->mapping->host)) { in ecryptfs_write_begin()
373 zero_user(page, 0, PAGE_CACHE_SIZE); in ecryptfs_write_begin()
475 struct page *page, void *fsdata) in ecryptfs_write_end() argument
494 rc = fill_zeros_to_end_of_page(page, to); in ecryptfs_write_end()
500 rc = ecryptfs_encrypt_page(page); in ecryptfs_write_end()
518 unlock_page(page); in ecryptfs_write_end()
519 page_cache_release(page); in ecryptfs_write_end()