Lines Matching refs:index

128 		pgoff_t index, void *entry, struct exceptional_entry_key *key)  in dax_entry_waitqueue()  argument
138 index &= ~PG_PMD_COLOUR; in dax_entry_waitqueue()
141 key->entry_start = index; in dax_entry_waitqueue()
143 hash = hash_long((unsigned long)mapping ^ index, DAX_WAIT_TABLE_BITS); in dax_entry_waitqueue()
166 pgoff_t index, void *entry, bool wake_all) in dax_wake_mapping_entry_waiter() argument
171 wq = dax_entry_waitqueue(mapping, index, entry, &key); in dax_wake_mapping_entry_waiter()
221 pgoff_t index, void *entry);
233 pgoff_t index, void ***slotp) in get_unlocked_mapping_entry() argument
243 entry = __radix_tree_lookup(&mapping->i_pages, index, NULL, in get_unlocked_mapping_entry()
253 wq = dax_entry_waitqueue(mapping, index, entry, &ewait.key); in get_unlocked_mapping_entry()
268 static void wait_entry_unlocked(struct address_space *mapping, pgoff_t index, in wait_entry_unlocked() argument
277 wq = dax_entry_waitqueue(mapping, index, entry, &ewait.key); in wait_entry_unlocked()
290 static void unlock_mapping_entry(struct address_space *mapping, pgoff_t index) in unlock_mapping_entry() argument
295 entry = __radix_tree_lookup(&mapping->i_pages, index, NULL, &slot); in unlock_mapping_entry()
303 dax_wake_mapping_entry_waiter(mapping, index, entry, false); in unlock_mapping_entry()
307 pgoff_t index) in put_locked_mapping_entry() argument
309 unlock_mapping_entry(mapping, index); in put_locked_mapping_entry()
317 pgoff_t index, void *entry) in put_unlocked_mapping_entry() argument
323 dax_wake_mapping_entry_waiter(mapping, index, entry, false); in put_unlocked_mapping_entry()
359 unsigned long size = dax_entry_size(entry), pfn, index; in dax_associate_entry() local
365 index = linear_page_index(vma, address & ~(size - 1)); in dax_associate_entry()
371 page->index = index + i++; in dax_associate_entry()
389 page->index = 0; in dax_disassociate_entry()
408 pgoff_t index; in dax_lock_mapping_entry() local
439 index = page->index; in dax_lock_mapping_entry()
441 entry = __radix_tree_lookup(&mapping->i_pages, index, in dax_lock_mapping_entry()
448 wait_entry_unlocked(mapping, index, &slot, entry); in dax_lock_mapping_entry()
470 unlock_mapping_entry(mapping, page->index); in dax_unlock_mapping_entry()
499 static void *grab_mapping_entry(struct address_space *mapping, pgoff_t index, in grab_mapping_entry() argument
507 entry = get_unlocked_mapping_entry(mapping, index, &slot); in grab_mapping_entry()
517 put_unlocked_mapping_entry(mapping, index, in grab_mapping_entry()
550 unmap_mapping_pages(mapping, index & ~PG_PMD_COLOUR, in grab_mapping_entry()
557 put_locked_mapping_entry(mapping, index); in grab_mapping_entry()
569 entry = __radix_tree_lookup(&mapping->i_pages, index, in grab_mapping_entry()
580 radix_tree_delete(&mapping->i_pages, index); in grab_mapping_entry()
582 dax_wake_mapping_entry_waiter(mapping, index, entry, in grab_mapping_entry()
588 err = __radix_tree_insert(&mapping->i_pages, index, in grab_mapping_entry()
634 pgoff_t index, end; in dax_layout_busy_page() local
647 index = 0; in dax_layout_busy_page()
664 while (index < end && pagevec_lookup_entries(&pvec, mapping, index, in dax_layout_busy_page()
665 min(end - index, (pgoff_t)PAGEVEC_SIZE), in dax_layout_busy_page()
673 index = indices[i]; in dax_layout_busy_page()
674 if (index >= end) in dax_layout_busy_page()
682 entry = get_unlocked_mapping_entry(mapping, index, NULL); in dax_layout_busy_page()
692 put_unlocked_mapping_entry(mapping, index, entry); in dax_layout_busy_page()
706 index += nr_pages; in dax_layout_busy_page()
716 pgoff_t index, bool trunc) in __dax_invalidate_mapping_entry() argument
723 entry = get_unlocked_mapping_entry(mapping, index, NULL); in __dax_invalidate_mapping_entry()
727 (radix_tree_tag_get(pages, index, PAGECACHE_TAG_DIRTY) || in __dax_invalidate_mapping_entry()
728 radix_tree_tag_get(pages, index, PAGECACHE_TAG_TOWRITE))) in __dax_invalidate_mapping_entry()
731 radix_tree_delete(pages, index); in __dax_invalidate_mapping_entry()
735 put_unlocked_mapping_entry(mapping, index, entry); in __dax_invalidate_mapping_entry()
743 int dax_delete_mapping_entry(struct address_space *mapping, pgoff_t index) in dax_delete_mapping_entry() argument
745 int ret = __dax_invalidate_mapping_entry(mapping, index, true); in dax_delete_mapping_entry()
762 pgoff_t index) in dax_invalidate_mapping_entry_sync() argument
764 return __dax_invalidate_mapping_entry(mapping, index, false); in dax_invalidate_mapping_entry_sync()
807 pgoff_t index = vmf->pgoff; in dax_insert_mapping_entry() local
816 unmap_mapping_pages(mapping, index & ~PG_PMD_COLOUR, in dax_insert_mapping_entry()
842 ret = __radix_tree_lookup(pages, index, &node, &slot); in dax_insert_mapping_entry()
850 radix_tree_tag_set(pages, index, PAGECACHE_TAG_DIRTY); in dax_insert_mapping_entry()
868 pgoff_t index, unsigned long pfn) in dax_mapping_entry_mkclean() argument
876 vma_interval_tree_foreach(vma, &mapping->i_mmap, index, index) { in dax_mapping_entry_mkclean()
884 address = pgoff_address(index, vma); in dax_mapping_entry_mkclean()
940 struct address_space *mapping, pgoff_t index, void *entry) in dax_writeback_one() argument
956 entry2 = get_unlocked_mapping_entry(mapping, index, &slot); in dax_writeback_one()
974 if (!radix_tree_tag_get(pages, index, PAGECACHE_TAG_TOWRITE)) in dax_writeback_one()
985 radix_tree_tag_clear(pages, index, PAGECACHE_TAG_TOWRITE); in dax_writeback_one()
998 dax_mapping_entry_mkclean(mapping, index, pfn); in dax_writeback_one()
1007 radix_tree_tag_clear(pages, index, PAGECACHE_TAG_DIRTY); in dax_writeback_one()
1009 trace_dax_writeback_one(mapping->host, index, size >> PAGE_SHIFT); in dax_writeback_one()
1010 put_locked_mapping_entry(mapping, index); in dax_writeback_one()
1014 put_unlocked_mapping_entry(mapping, index, entry2); in dax_writeback_one()
1757 pgoff_t index = vmf->pgoff; in dax_insert_pfn_mkwrite() local
1761 entry = get_unlocked_mapping_entry(mapping, index, &slot); in dax_insert_pfn_mkwrite()
1766 put_unlocked_mapping_entry(mapping, index, entry); in dax_insert_pfn_mkwrite()
1772 radix_tree_tag_set(&mapping->i_pages, index, PAGECACHE_TAG_DIRTY); in dax_insert_pfn_mkwrite()
1787 put_locked_mapping_entry(mapping, index); in dax_insert_pfn_mkwrite()