Lines Matching refs:index
142 struct shmem_inode_info *info, pgoff_t index);
143 static int shmem_swapin_page(struct inode *inode, pgoff_t index,
147 static int shmem_getpage_gfp(struct inode *inode, pgoff_t index,
152 int shmem_getpage(struct inode *inode, pgoff_t index,
155 return shmem_getpage_gfp(inode, index, pagep, sgp,
415 pgoff_t index, void *expected, void *replacement)
417 XA_STATE(xas, &mapping->i_pages, index);
437 pgoff_t index, swp_entry_t swap)
439 return xa_load(&mapping->i_pages, index) == swp_to_radix_entry(swap);
674 pgoff_t index, void *expected, gfp_t gfp,
677 XA_STATE_ORDER(xas, &mapping->i_pages, index, compound_order(page));
683 VM_BUG_ON_PAGE(index != round_down(index, nr), page);
690 page->index = index;
753 error = shmem_replace_entry(mapping, page->index, page, radswap);
767 pgoff_t index, void *radswap)
771 old = xa_cmpxchg_irq(&mapping->i_pages, index, radswap, NULL, 0);
851 pgoff_t index = 0;
862 pvec.nr = find_get_entries(mapping, index,
866 index = indices[pvec.nr - 1] + 1;
893 page->index >= start && page->index + HPAGE_PMD_NR <= end)
916 pgoff_t index;
923 index = start;
924 while (index < end) {
925 pvec.nr = find_get_entries(mapping, index,
926 min(end - index, (pgoff_t)PAGEVEC_SIZE),
933 index = indices[i];
934 if (index >= end)
941 index, page);
945 VM_BUG_ON_PAGE(page_to_pgoff(page) != index, page);
961 index++;
992 index = start;
993 while (index < end) {
996 pvec.nr = find_get_entries(mapping, index,
997 min(end - index, (pgoff_t)PAGEVEC_SIZE),
1001 if (index == start || end != -1)
1004 index = start;
1010 index = indices[i];
1011 if (index >= end)
1017 if (shmem_free_swap(mapping, index, page)) {
1019 index--;
1032 index--;
1043 if (index <
1045 start = index + 1;
1052 index++;
1370 pgoff_t index;
1375 index = page->index;
1413 index >= shmem_falloc->start &&
1414 index < shmem_falloc->next)
1508 struct shmem_inode_info *info, pgoff_t index)
1513 vma->vm_pgoff = index + info->vfs_inode.i_ino;
1514 vma->vm_policy = mpol_shared_policy_lookup(&info->policy, index);
1524 struct shmem_inode_info *info, pgoff_t index)
1530 shmem_pseudo_vma_init(&pvma, info, index);
1540 struct shmem_inode_info *info, pgoff_t index)
1547 hindex = round_down(index, HPAGE_PMD_NR);
1564 struct shmem_inode_info *info, pgoff_t index)
1569 shmem_pseudo_vma_init(&pvma, info, index);
1578 pgoff_t index, bool huge)
1593 page = shmem_alloc_hugepage(gfp, info, index);
1595 page = shmem_alloc_page(gfp, info, index);
1626 struct shmem_inode_info *info, pgoff_t index)
1644 newpage = shmem_alloc_page(gfp, info, index);
1698 static int shmem_swapin_page(struct inode *inode, pgoff_t index,
1724 page = shmem_swapin(swap, gfp, info, index);
1734 !shmem_confirm_swap(mapping, index, swap)) {
1751 error = shmem_replace_page(&page, gfp, info, index);
1756 error = shmem_add_to_page_cache(page, mapping, index,
1777 if (!shmem_confirm_swap(mapping, index, swap))
1798 static int shmem_getpage_gfp(struct inode *inode, pgoff_t index,
1809 pgoff_t hindex = index;
1814 if (index > (MAX_LFS_FILESIZE >> PAGE_SHIFT))
1820 ((loff_t)index << PAGE_SHIFT) >= i_size_read(inode)) {
1827 page = find_lock_entry(mapping, index);
1829 error = shmem_swapin_page(inode, index, &page,
1839 hindex = page->index;
1850 hindex = index;
1879 off = round_up(index, HPAGE_PMD_NR);
1895 page = shmem_alloc_and_acct_page(gfp, inode, index, true);
1899 index, false);
1925 hindex = round_down(index, HPAGE_PMD_NR);
1927 hindex = index;
1989 ((loff_t)index << PAGE_SHIFT) >= i_size_read(inode)) {
2001 *pagep = page + index - hindex;
2226 pgoff_t index;
2228 index = ((addr - vma->vm_start) >> PAGE_SHIFT) + vma->vm_pgoff;
2229 return mpol_shared_policy_lookup(&SHMEM_I(inode)->policy, index);
2523 pgoff_t index = pos >> PAGE_SHIFT;
2534 return shmem_getpage(inode, index, pagep, SGP_WRITE);
2578 pgoff_t index;
2593 index = *ppos >> PAGE_SHIFT;
2603 if (index > end_index)
2605 if (index == end_index) {
2611 error = shmem_getpage(inode, index, &page, sgp);
2630 if (index == end_index) {
2665 index += offset >> PAGE_SHIFT;
2678 *ppos = ((loff_t) index << PAGE_SHIFT) + offset;
2687 pgoff_t index, pgoff_t end, int whence)
2698 pvec.nr = find_get_entries(mapping, index,
2702 index = end;
2705 for (i = 0; i < pvec.nr; i++, index++) {
2706 if (index < indices[i]) {
2711 index = indices[i];
2718 if (index >= end ||
2730 return index;
2776 pgoff_t start, index, end;
2845 for (index = start; index < end; index++) {
2857 error = shmem_getpage(inode, index, &page, SGP_FALLOC);
2860 if (index > start) {
2863 ((loff_t)index << PAGE_SHIFT) - 1, true);
4315 * @index: the page index
4318 * This behaves as a tmpfs "read_cache_page_gfp(mapping, index, gfp)",
4328 pgoff_t index, gfp_t gfp)
4336 error = shmem_getpage_gfp(inode, index, &page, SGP_CACHE,
4347 return read_cache_page_gfp(mapping, index, gfp);