Home
last modified time | relevance | path

Searched refs:xa_index (Results 1 – 24 of 24) sorted by relevance

/linux-6.6.21/lib/
Dxarray.c151 xas->xa_offset = get_offset(xas->xa_index, xas->xa_node); in xas_set_offset()
158 xas->xa_index &= ~XA_CHUNK_MASK << shift; in xas_move_index()
159 xas->xa_index += offset << shift; in xas_move_index()
192 if (xas->xa_index) in xas_start()
195 if ((xas->xa_index >> xa_to_node(entry)->shift) > XA_CHUNK_MASK) in xas_start()
205 unsigned int offset = get_offset(xas->xa_index, node); in xas_descend()
415 unsigned long max = xas->xa_index; in xas_max()
706 unsigned long index = xas->xa_index; in xas_create_range()
710 xas->xa_index |= ((sibs + 1UL) << shift) - 1; in xas_create_range()
720 if (xas->xa_index <= (index | XA_CHUNK_MASK)) in xas_create_range()
[all …]
Didr.c398 if (xas.xa_index > min / IDA_BITMAP_BITS) in ida_alloc_range()
400 if (xas.xa_index * IDA_BITMAP_BITS + bit > max) in ida_alloc_range()
408 if (xas.xa_index * IDA_BITMAP_BITS + bit > max) in ida_alloc_range()
431 if (xas.xa_index * IDA_BITMAP_BITS + bit > max) in ida_alloc_range()
455 xas.xa_index = min / IDA_BITMAP_BITS; in ida_alloc_range()
463 return xas.xa_index * IDA_BITMAP_BITS + bit; in ida_alloc_range()
Dtest_xarray.c139 xas_store(&xas, xa_mk_index(xas.xa_index)); in check_xas_retry()
284 XA_BUG_ON(xa, !xa_get_mark(xa, xas.xa_index, XA_MARK_0)); in check_xa_mark_2()
564 XA_BUG_ON(xa, xas.xa_index != index); in check_multi_store_2()
1149 return entry ? xas.xa_index : -1; in xa_find_entry()
1276 XA_BUG_ON(xa, xas.xa_index != i); in check_move_small()
1283 XA_BUG_ON(xa, xas.xa_index != i); in check_move_small()
1290 XA_BUG_ON(xa, xas.xa_index != i); in check_move_small()
1299 XA_BUG_ON(xa, xas.xa_index != ULONG_MAX); in check_move_small()
1301 XA_BUG_ON(xa, xas.xa_index != 0); in check_move_small()
1303 XA_BUG_ON(xa, xas.xa_index != ULONG_MAX); in check_move_small()
[all …]
Diov_iter.c1023 pages[ret] = find_subpage(page, xas.xa_index); in iter_xarray_populate_pages()
1635 p[nr++] = find_subpage(page, xas.xa_index); in iov_iter_extract_xarray_pages()
/linux-6.6.21/include/linux/
Dxarray.h1346 unsigned long xa_index; member
1367 .xa_index = index, \
1594 offset = (xas->xa_index >> node->shift) & XA_CHUNK_MASK; in xas_reload()
1616 xas->xa_index = index; in xas_set()
1634 xas->xa_index = index; in xas_advance()
1648 xas->xa_index = order < BITS_PER_LONG ? (index >> order) << order : 0; in xas_set_order()
1694 xas->xa_offset != (xas->xa_index & XA_CHUNK_MASK))) in xas_next_entry()
1698 if (unlikely(xas->xa_index >= max)) in xas_next_entry()
1706 xas->xa_index++; in xas_next_entry()
1756 xas->xa_index = (xas->xa_index & ~XA_CHUNK_MASK) + offset; in xas_next_marked()
[all …]
/linux-6.6.21/tools/testing/radix-tree/
Dmultiorder.c62 assert((xas.xa_index | mask) == (index[i] | mask)); in multiorder_iteration()
114 assert((xas.xa_index | mask) == (tag_index[i] | mask)); in multiorder_tagged_iteration()
141 assert((xas.xa_index | mask) == (tag_index[i] | mask)); in multiorder_tagged_iteration()
154 assert(xas.xa_index == tag_index[i]); in multiorder_tagged_iteration()
191 item_sanity(item, xas.xa_index); in iterator_func()
Diteration_check_2.c26 assert(xas.xa_index >= 100); in iterator()
Dtest.c262 item_free(entry, xas.xa_index); in item_kill_tree()
/linux-6.6.21/mm/
Dfilemap.c869 folio->index = xas.xa_index; in __filemap_add_folio()
872 unsigned int order = xa_get_order(xas.xa, xas.xa_index); in __filemap_add_folio()
876 xas_split_alloc(&xas, xa_load(xas.xa, xas.xa_index), in __filemap_add_folio()
891 order = xa_get_order(xas.xa, xas.xa_index); in __filemap_add_folio()
1740 if (xas.xa_index == 0) in page_cache_next_miss()
1744 return xas.xa_index; in page_cache_next_miss()
1776 if (xas.xa_index == ULONG_MAX) in page_cache_prev_miss()
1780 return xas.xa_index; in page_cache_prev_miss()
2032 indices[fbatch->nr] = xas.xa_index; in find_get_entries()
2088 VM_BUG_ON_FOLIO(!folio_contains(folio, xas.xa_index), in find_lock_entries()
[all …]
Dlist_lru.c535 else if (!xas_error(&xas) && index != xas.xa_index) in memcg_list_lru_alloc()
Dswap_state.c111 VM_BUG_ON_FOLIO(xas.xa_index != idx + i, folio); in add_to_swap_cache()
Dmadvise.c260 ((xas.xa_index - vma->vm_pgoff) << PAGE_SHIFT); in shmem_swapin_range()
Dshmem.c883 if (xas.xa_index == max) in shmem_partial_swap_usage()
1315 indices[folio_batch_count(fbatch)] = xas.xa_index; in shmem_find_swap_entries()
1326 return xas.xa_index; in shmem_find_swap_entries()
Dkhugepaged.c1837 VM_BUG_ON(index != xas.xa_index); in collapse_file()
/linux-6.6.21/fs/
Ddax.c147 unsigned long index = xas->xa_index; in dax_entry_waitqueue()
576 unsigned long index = xas->xa_index; in grab_mapping_entry()
617 xas->xa_index & ~PG_PMD_COLOUR, in grab_mapping_entry()
883 unsigned long index = xas->xa_index; in dax_insert_entry()
988 index = xas->xa_index & ~(count - 1); in dax_writeback_one()
1041 trace_dax_writeback_range(inode, xas.xa_index, end_index); in dax_writeback_mapping_range()
1043 tag_pages_for_writeback(mapping, xas.xa_index, end_index); in dax_writeback_mapping_range()
1061 trace_dax_writeback_range_done(inode, xas.xa_index, end_index); in dax_writeback_mapping_range()
1649 loff_t pos = (loff_t)xas->xa_index << PAGE_SHIFT; in dax_fault_iter()
1801 if ((xas->xa_index | PG_PMD_COLOUR) >= max_pgoff) in dax_fault_check_fallback()
[all …]
Dlibfs.c447 ctx->pos = xas.xa_index + 1; in offset_iterate_dir()
/linux-6.6.21/drivers/infiniband/core/
Dib_core_uverbs.c298 xa_first = xas.xa_index; in rdma_user_mmap_entry_insert_range()
309 if (xas.xa_node == XAS_BOUNDS || xas.xa_index >= xa_last) in rdma_user_mmap_entry_insert_range()
Ddevice.c170 *indexp = xas.xa_index; in xan_find_marked()
/linux-6.6.21/arch/arm64/mm/
Dmteswap.c81 __xa_erase(&mte_pages, xa_state.xa_index); in mte_invalidate_tags_area()
/linux-6.6.21/fs/cachefiles/
Dondemand.c272 cache->req_id_next = xas.xa_index + 1; in cachefiles_ondemand_daemon_read()
275 id = xas.xa_index; in cachefiles_ondemand_daemon_read()
373 xas.xa_index = 0; in cachefiles_ondemand_send_req()
/linux-6.6.21/arch/arm64/kernel/
Dhibernate.c299 unsigned long pfn = xa_state.xa_index; in swsusp_mte_restore_tags()
/linux-6.6.21/Documentation/translations/zh_CN/core-api/
Dxarray.rst355 如果xas_load()遇到一个多索引条目,xa_state中的xa_index将不会被改变。当遍历一个XArray或者调用xas_find()
/linux-6.6.21/drivers/iommu/iommufd/
Dpages.c608 if (xas.xa_index != start_index) in pages_to_xarray()
609 clear_xarray(xa, start_index, xas.xa_index - 1); in pages_to_xarray()
/linux-6.6.21/Documentation/core-api/
Dxarray.rst474 If xas_load() encounters a multi-index entry, the xa_index