Lines Matching refs:index
123 struct shmem_inode_info *info, pgoff_t index);
124 static int shmem_getpage_gfp(struct inode *inode, pgoff_t index,
127 static inline int shmem_getpage(struct inode *inode, pgoff_t index, in shmem_getpage() argument
130 return shmem_getpage_gfp(inode, index, pagep, sgp, in shmem_getpage()
256 pgoff_t index, void *expected, void *replacement) in shmem_radix_tree_replace() argument
263 pslot = radix_tree_lookup_slot(&mapping->page_tree, index); in shmem_radix_tree_replace()
281 pgoff_t index, swp_entry_t swap) in shmem_confirm_swap() argument
286 item = radix_tree_lookup(&mapping->page_tree, index); in shmem_confirm_swap()
296 pgoff_t index, void *expected) in shmem_add_to_page_cache() argument
305 page->index = index; in shmem_add_to_page_cache()
309 error = radix_tree_insert(&mapping->page_tree, index, page); in shmem_add_to_page_cache()
311 error = shmem_radix_tree_replace(mapping, index, expected, in shmem_add_to_page_cache()
335 error = shmem_radix_tree_replace(mapping, page->index, page, radswap); in shmem_delete_from_page_cache()
349 pgoff_t index, void *radswap) in shmem_free_swap() argument
354 old = radix_tree_delete_item(&mapping->page_tree, index, radswap); in shmem_free_swap()
369 pgoff_t index = 0; in shmem_unlock_mapping() local
380 pvec.nr = find_get_entries(mapping, index, in shmem_unlock_mapping()
384 index = indices[pvec.nr - 1] + 1; in shmem_unlock_mapping()
408 pgoff_t index; in shmem_undo_range() local
415 index = start; in shmem_undo_range()
416 while (index < end) { in shmem_undo_range()
417 pvec.nr = find_get_entries(mapping, index, in shmem_undo_range()
418 min(end - index, (pgoff_t)PAGEVEC_SIZE), in shmem_undo_range()
425 index = indices[i]; in shmem_undo_range()
426 if (index >= end) in shmem_undo_range()
433 index, page); in shmem_undo_range()
450 index++; in shmem_undo_range()
481 index = start; in shmem_undo_range()
482 while (index < end) { in shmem_undo_range()
485 pvec.nr = find_get_entries(mapping, index, in shmem_undo_range()
486 min(end - index, (pgoff_t)PAGEVEC_SIZE), in shmem_undo_range()
490 if (index == start || end != -1) in shmem_undo_range()
493 index = start; in shmem_undo_range()
499 index = indices[i]; in shmem_undo_range()
500 if (index >= end) in shmem_undo_range()
506 if (shmem_free_swap(mapping, index, page)) { in shmem_undo_range()
508 index--; in shmem_undo_range()
523 index--; in shmem_undo_range()
531 index++; in shmem_undo_range()
639 pgoff_t index; in shmem_unuse_inode() local
644 index = radix_tree_locate_item(&mapping->page_tree, radswap); in shmem_unuse_inode()
645 if (index == -1) in shmem_unuse_inode()
660 error = shmem_replace_page(pagep, gfp, info, index); in shmem_unuse_inode()
690 error = shmem_add_to_page_cache(*pagep, mapping, index, in shmem_unuse_inode()
772 pgoff_t index; in shmem_writepage() local
776 index = page->index; in shmem_writepage()
814 index >= shmem_falloc->start && in shmem_writepage()
815 index < shmem_falloc->next) in shmem_writepage()
897 struct shmem_inode_info *info, pgoff_t index) in shmem_swapin() argument
905 pvma.vm_pgoff = index + info->vfs_inode.i_ino; in shmem_swapin()
907 pvma.vm_policy = mpol_shared_policy_lookup(&info->policy, index); in shmem_swapin()
918 struct shmem_inode_info *info, pgoff_t index) in shmem_alloc_page() argument
926 pvma.vm_pgoff = index + info->vfs_inode.i_ino; in shmem_alloc_page()
928 pvma.vm_policy = mpol_shared_policy_lookup(&info->policy, index); in shmem_alloc_page()
945 struct shmem_inode_info *info, pgoff_t index) in shmem_swapin() argument
951 struct shmem_inode_info *info, pgoff_t index) in shmem_alloc_page() argument
982 struct shmem_inode_info *info, pgoff_t index) in shmem_replace_page() argument
998 newpage = shmem_alloc_page(gfp, info, index); in shmem_replace_page()
1054 static int shmem_getpage_gfp(struct inode *inode, pgoff_t index, in shmem_getpage_gfp() argument
1067 if (index > (MAX_LFS_FILESIZE >> PAGE_CACHE_SHIFT)) in shmem_getpage_gfp()
1071 page = find_lock_entry(mapping, index); in shmem_getpage_gfp()
1078 ((loff_t)index << PAGE_CACHE_SHIFT) >= i_size_read(inode)) { in shmem_getpage_gfp()
1113 page = shmem_swapin(swap, gfp, info, index); in shmem_getpage_gfp()
1123 !shmem_confirm_swap(mapping, index, swap)) { in shmem_getpage_gfp()
1134 error = shmem_replace_page(&page, gfp, info, index); in shmem_getpage_gfp()
1141 error = shmem_add_to_page_cache(page, mapping, index, in shmem_getpage_gfp()
1191 page = shmem_alloc_page(gfp, info, index); in shmem_getpage_gfp()
1207 error = shmem_add_to_page_cache(page, mapping, index, in shmem_getpage_gfp()
1247 ((loff_t)index << PAGE_CACHE_SHIFT) >= i_size_read(inode)) { in shmem_getpage_gfp()
1270 if (swap.val && !shmem_confirm_swap(mapping, index, swap)) in shmem_getpage_gfp()
1375 pgoff_t index; in shmem_get_policy() local
1377 index = ((addr - vma->vm_start) >> PAGE_SHIFT) + vma->vm_pgoff; in shmem_get_policy()
1378 return mpol_shared_policy_lookup(&SHMEM_I(inode)->policy, index); in shmem_get_policy()
1497 pgoff_t index = pos >> PAGE_CACHE_SHIFT; in shmem_write_begin() local
1507 return shmem_getpage(inode, index, pagep, SGP_WRITE, NULL); in shmem_write_begin()
1540 pgoff_t index; in shmem_file_read_iter() local
1555 index = *ppos >> PAGE_CACHE_SHIFT; in shmem_file_read_iter()
1565 if (index > end_index) in shmem_file_read_iter()
1567 if (index == end_index) { in shmem_file_read_iter()
1573 error = shmem_getpage(inode, index, &page, sgp, NULL); in shmem_file_read_iter()
1589 if (index == end_index) { in shmem_file_read_iter()
1624 index += offset >> PAGE_CACHE_SHIFT; in shmem_file_read_iter()
1637 *ppos = ((loff_t) index << PAGE_CACHE_SHIFT) + offset; in shmem_file_read_iter()
1652 pgoff_t index, end_index; in shmem_file_splice_read() local
1675 index = *ppos >> PAGE_CACHE_SHIFT; in shmem_file_splice_read()
1680 spd.nr_pages = find_get_pages_contig(mapping, index, in shmem_file_splice_read()
1682 index += spd.nr_pages; in shmem_file_splice_read()
1686 error = shmem_getpage(inode, index, &page, SGP_CACHE, NULL); in shmem_file_splice_read()
1691 index++; in shmem_file_splice_read()
1694 index = *ppos >> PAGE_CACHE_SHIFT; in shmem_file_splice_read()
1708 error = shmem_getpage(inode, index, &page, in shmem_file_splice_read()
1719 if (unlikely(!isize || index > end_index)) in shmem_file_splice_read()
1722 if (end_index == index) { in shmem_file_splice_read()
1738 index++; in shmem_file_splice_read()
1760 pgoff_t index, pgoff_t end, int whence) in shmem_seek_hole_data() argument
1771 pvec.nr = find_get_entries(mapping, index, in shmem_seek_hole_data()
1775 index = end; in shmem_seek_hole_data()
1778 for (i = 0; i < pvec.nr; i++, index++) { in shmem_seek_hole_data()
1779 if (index < indices[i]) { in shmem_seek_hole_data()
1784 index = indices[i]; in shmem_seek_hole_data()
1791 if (index >= end || in shmem_seek_hole_data()
1803 return index; in shmem_seek_hole_data()
1870 radix_tree_tag_set(&mapping->page_tree, iter.index, in shmem_tag_pins()
1877 start = iter.index + 1; in shmem_tag_pins()
1942 iter.index, SHMEM_TAG_PINNED); in shmem_wait_for_pins()
1947 start = iter.index + 1; in shmem_wait_for_pins()
2072 pgoff_t start, index, end; in shmem_fallocate() local
2140 for (index = start; index < end; index++) { in shmem_fallocate()
2152 error = shmem_getpage(inode, index, &page, SGP_FALLOC, in shmem_fallocate()
2158 (loff_t)index << PAGE_CACHE_SHIFT, true); in shmem_fallocate()
3448 pgoff_t index, gfp_t gfp) in shmem_read_mapping_page_gfp() argument
3456 error = shmem_getpage_gfp(inode, index, &page, SGP_CACHE, gfp, NULL); in shmem_read_mapping_page_gfp()
3466 return read_cache_page_gfp(mapping, index, gfp); in shmem_read_mapping_page_gfp()