Searched refs:xas (Results 1 - 25 of 46) sorted by last modified time

12

/linux-master/virt/kvm/
H A Dkvm_main.c2402 XA_STATE(xas, &kvm->mem_attr_array, start);
2410 has_attrs = !xas_find(&xas, end - 1);
2417 entry = xas_next(&xas);
2418 } while (xas_retry(&xas, entry));
2420 if (xas.xa_index != index || xa_to_value(entry) != attrs) {
/linux-master/include/linux/
H A Dxarray.h1358 * We encode errnos in the xas->xa_node. If an error has happened, we need to
1380 * @name: Name of this operation state (usually xas).
1391 * @name: Name of this operation state (usually xas).
1406 #define xas_marked(xas, mark) xa_marked((xas)->xa, (mark))
1407 #define xas_trylock(xas) xa_trylock((xas)->xa)
1408 #define xas_lock(xas) xa_lock((xas)->xa)
1409 #define xas_unlock(xas) xa_unloc
1425 xas_error(const struct xa_state *xas) argument
1439 xas_set_err(struct xa_state *xas, long err) argument
1450 xas_invalid(const struct xa_state *xas) argument
1461 xas_valid(const struct xa_state *xas) argument
1472 xas_is_node(const struct xa_state *xas) argument
1505 xas_reset(struct xa_state *xas) argument
1522 xas_retry(struct xa_state *xas, const void *entry) argument
1559 xas_split(struct xa_state *xas, void *entry, unsigned int order) argument
1565 xas_split_alloc(struct xa_state *xas, void *entry, unsigned int order, gfp_t gfp) argument
1585 xas_reload(struct xa_state *xas) argument
1614 xas_set(struct xa_state *xas, unsigned long index) argument
1630 xas_advance(struct xa_state *xas, unsigned long index) argument
1644 xas_set_order(struct xa_state *xas, unsigned long index, unsigned int order) argument
1667 xas_set_update(struct xa_state *xas, xa_update_node_t update) argument
1672 xas_set_lru(struct xa_state *xas, struct list_lru *lru) argument
1688 xas_next_entry(struct xa_state *xas, unsigned long max) argument
1713 xas_find_chunk(struct xa_state *xas, bool advance, xa_mark_t mark) argument
1745 xas_next_marked(struct xa_state *xas, unsigned long max, xa_mark_t mark) argument
1844 xas_prev(struct xa_state *xas) argument
1873 xas_next(struct xa_state *xas) argument
[all...]
H A Dpagemap.h1385 XA_STATE(xas, &rac->mapping->i_pages, 0);
1393 xas_set(&xas, rac->_index);
1395 xas_for_each(&xas, page, rac->_index + rac->_nr_pages - 1) {
1396 if (xas_retry(&xas, page))
/linux-master/mm/
H A Dshmem.c482 XA_STATE(xas, &mapping->i_pages, index);
487 item = xas_load(&xas);
490 xas_store(&xas, replacement);
765 XA_STATE_ORDER(xas, &mapping->i_pages, index, folio_order(folio));
781 xas_lock_irq(&xas);
782 if (expected != xas_find_conflict(&xas)) {
783 xas_set_err(&xas, -EEXIST);
786 if (expected && xas_find_conflict(&xas)) {
787 xas_set_err(&xas, -EEXIST);
790 xas_store(&xas, foli
[all...]
H A Dpage-writeback.c2344 XA_STATE(xas, &mapping->i_pages, start);
2348 xas_lock_irq(&xas);
2349 xas_for_each_marked(&xas, page, end, PAGECACHE_TAG_DIRTY) {
2350 xas_set_mark(&xas, PAGECACHE_TAG_TOWRITE);
2354 xas_pause(&xas);
2355 xas_unlock_irq(&xas);
2357 xas_lock_irq(&xas);
2359 xas_unlock_irq(&xas);
3050 XA_STATE(xas, &mapping->i_pages, folio_index(folio));
3056 xas_lock_irqsave(&xas, flag
[all...]
H A Dfilemap.c127 static void mapping_set_update(struct xa_state *xas, argument
132 xas_set_update(xas, workingset_update_node);
133 xas_set_lru(xas, &shadow_nodes);
139 XA_STATE(xas, &mapping->i_pages, folio->index);
142 mapping_set_update(&xas, mapping);
144 xas_set_order(&xas, folio->index, folio_order(folio));
149 xas_store(&xas, shadow);
150 xas_init_marks(&xas);
289 XA_STATE(xas, &mapping->i_pages, fbatch->folios[0]->index);
294 mapping_set_update(&xas, mappin
1959 find_get_entry(struct xa_state *xas, pgoff_t max, xa_mark_t mark) argument
2932 folio_seek_hole_data(struct xa_state *xas, struct address_space *mapping, struct folio *folio, loff_t start, loff_t end, bool seek_data) argument
2965 seek_folio_size(struct xa_state *xas, struct folio *folio) argument
3436 next_uptodate_folio(struct xa_state *xas, struct address_space *mapping, pgoff_t end_pgoff) argument
[all...]
H A Dmadvise.c224 XA_STATE(xas, &mapping->i_pages, linear_page_index(vma, start));
230 xas_for_each(&xas, folio, end_index) {
242 ((xas.xa_index - vma->vm_pgoff) << PAGE_SHIFT);
243 xas_pause(&xas);
H A Dhuge_memory.c3045 XA_STATE_ORDER(xas, &folio->mapping->i_pages, folio->index, new_order);
3128 xas_split_alloc(&xas, folio, folio_order(folio), gfp);
3129 if (xas_error(&xas)) {
3130 ret = xas_error(&xas);
3167 xas_lock(&xas);
3168 xas_reset(&xas);
3169 if (xas_load(&xas) != folio)
3191 xas_split(&xas, folio, folio_order(folio));
3211 xas_unlock(&xas);
3225 xas_destroy(&xas);
[all...]
H A Dswap_state.c93 XA_STATE_ORDER(xas, &address_space->i_pages, idx, folio_order(folio));
97 xas_set_update(&xas, workingset_update_node);
108 xas_lock_irq(&xas);
109 xas_create_range(&xas);
110 if (xas_error(&xas))
113 VM_BUG_ON_FOLIO(xas.xa_index != idx + i, folio);
115 old = xas_load(&xas);
119 xas_store(&xas, folio);
120 xas_next(&xas);
126 xas_unlock_irq(&xas);
[all...]
H A Dmigrate.c406 XA_STATE(xas, &mapping->i_pages, folio_index(folio));
430 xas_lock_irq(&xas);
432 xas_unlock_irq(&xas);
464 xas_store(&xas, newfolio);
465 xas_next(&xas);
475 xas_unlock(&xas);
533 XA_STATE(xas, &mapping->i_pages, folio_index(src));
536 xas_lock_irq(&xas);
539 xas_unlock_irq(&xas);
548 xas_store(&xas, ds
[all...]
H A Dmemfd.c38 static void memfd_tag_pins(struct xa_state *xas) argument
45 xas_lock_irq(xas);
46 xas_for_each(xas, folio, ULONG_MAX) {
48 xas_set_mark(xas, MEMFD_TAG_PINNED);
54 xas_pause(xas);
55 xas_unlock_irq(xas);
57 xas_lock_irq(xas);
59 xas_unlock_irq(xas);
73 XA_STATE(xas, &mapping->i_pages, 0);
77 memfd_tag_pins(&xas);
[all...]
H A Dkhugepaged.c1806 XA_STATE_ORDER(xas, &mapping->i_pages, start, HPAGE_PMD_ORDER);
1829 xas_lock_irq(&xas);
1830 xas_create_range(&xas);
1831 if (!xas_error(&xas))
1833 xas_unlock_irq(&xas);
1834 if (!xas_nomem(&xas, GFP_KERNEL)) {
1841 xas_set(&xas, index);
1842 page = xas_load(&xas);
1844 VM_BUG_ON(index != xas.xa_index);
1853 if (!xas_next_entry(&xas, en
[all...]
/linux-master/fs/smb/client/
H A Dsmb2ops.c4313 XA_STATE(xas, buffer, 0);
4316 xas_for_each_marked(&xas, folio, ULONG_MAX, XA_MARK_0) {
/linux-master/fs/netfs/
H A Dwrite_collect.c83 XA_STATE(xas, &wreq->mapping->i_pages, pos / PAGE_SIZE);
89 xas_reset(&xas);
90 folio = xas_load(&xas);
91 if (xas_retry(&xas, folio))
96 wreq->debug_id, xas.xa_index, pos / PAGE_SIZE);
99 if (folio == xas_reload(&xas))
H A Dmisc.c19 XA_STATE_ORDER(xas, xa, index, folio_order(folio));
22 xas_lock(&xas);
24 xas_store(&xas, folio);
25 if (!xas_error(&xas))
27 xas_unlock(&xas);
28 if (!xas_nomem(&xas, gfp_mask))
29 return xas_error(&xas);
34 xas_set_mark(&xas, NETFS_BUF_PUT_MARK);
36 xas_set_mark(&xas, NETFS_BUF_PAGECACHE_MARK);
37 xas_unlock(&xas);
[all...]
H A Dfscache_io.c182 XA_STATE(xas, &mapping->i_pages, first);
185 xas_for_each(&xas, page, last) {
H A Dbuffered_read.c29 XA_STATE(xas, &rreq->mapping->i_pages, start_page);
51 xas_for_each(&xas, folio, last_page) {
57 if (xas_retry(&xas, folio))
/linux-master/fs/
H A Dfs-writeback.c401 XA_STATE(xas, &mapping->i_pages, 0);
422 xas_for_each_marked(&xas, folio, ULONG_MAX, PAGECACHE_TAG_DIRTY) {
430 xas_set(&xas, 0);
431 xas_for_each_marked(&xas, folio, ULONG_MAX, PAGECACHE_TAG_WRITEBACK) {
/linux-master/lib/
H A Dxarray.c21 * @xas is the 'xarray operation state'. It may be either a pointer to
38 static inline void xas_lock_type(struct xa_state *xas, unsigned int lock_type) argument
41 xas_lock_irq(xas);
43 xas_lock_bh(xas);
45 xas_lock(xas);
48 static inline void xas_unlock_type(struct xa_state *xas, unsigned int lock_type) argument
51 xas_unlock_irq(xas);
53 xas_unlock_bh(xas);
55 xas_unlock(xas);
121 * @xas
126 xas_squash_marks(const struct xa_state *xas) argument
149 xas_set_offset(struct xa_state *xas) argument
155 xas_move_index(struct xa_state *xas, unsigned long offset) argument
162 xas_next_offset(struct xa_state *xas) argument
168 set_bounds(struct xa_state *xas) argument
181 xas_start(struct xa_state *xas) argument
203 xas_descend(struct xa_state *xas, struct xa_node *node) argument
235 xas_load(struct xa_state *xas) argument
268 xas_destroy(struct xa_state *xas) argument
298 xas_nomem(struct xa_state *xas, gfp_t gfp) argument
331 xas_destroy(xas); variable
351 xas_update(struct xa_state *xas, struct xa_node *node) argument
359 xas_alloc(struct xa_state *xas, unsigned int shift) argument
401 xas_size(const struct xa_state *xas) argument
413 xas_max(struct xa_state *xas) argument
437 xas_shrink(struct xa_state *xas) argument
481 xas_delete_node(struct xa_state *xas) argument
523 xas_free_nodes(struct xa_state *xas, struct xa_node *top) argument
559 xas_expand(struct xa_state *xas, void *head) argument
639 xas_create(struct xa_state *xas, bool allow_root) argument
704 xas_create_range(struct xa_state *xas) argument
747 update_node(struct xa_state *xas, struct xa_node *node, int count, int values) argument
775 xas_store(struct xa_state *xas, void *entry) argument
857 xas_get_mark(const struct xa_state *xas, xa_mark_t mark) argument
876 xas_set_mark(const struct xa_state *xas, xa_mark_t mark) argument
905 xas_clear_mark(const struct xa_state *xas, xa_mark_t mark) argument
939 xas_init_marks(const struct xa_state *xas) argument
1017 xas_split_alloc(struct xa_state *xas, void *entry, unsigned int order, gfp_t gfp) argument
1068 xas_split(struct xa_state *xas, void *entry, unsigned int order) argument
1135 xas_pause(struct xa_state *xas) argument
1165 __xas_prev(struct xa_state *xas) argument
1204 __xas_next(struct xa_state *xas) argument
1252 xas_find(struct xa_state *xas, unsigned long max) argument
1321 xas_find_marked(struct xa_state *xas, unsigned long max, xa_mark_t mark) argument
1409 xas_find_conflict(struct xa_state *xas) argument
1486 xas_result(struct xa_state *xas, void *curr) argument
1682 xas_set_range(struct xa_state *xas, unsigned long first, unsigned long last) argument
2053 xas_sibling(struct xa_state *xas) argument
2113 xas_extract_present(struct xa_state *xas, void **dst, unsigned long max, unsigned int n) argument
2132 xas_extract_marked(struct xa_state *xas, void **dst, unsigned long max, unsigned int n, xa_mark_t mark) argument
2202 struct xa_state xas = { local
[all...]
H A Dtest_xarray.c74 XA_STATE_ORDER(xas, xa, index, order);
78 xas_lock(&xas);
79 curr = xas_store(&xas, entry);
80 xas_unlock(&xas);
81 } while (xas_nomem(&xas, gfp));
104 XA_STATE(xas, xa, 0);
111 XA_BUG_ON(xa, xas_find(&xas, ULONG_MAX) != xa_mk_value(0));
113 XA_BUG_ON(xa, !xa_is_retry(xas_reload(&xas)));
114 XA_BUG_ON(xa, xas_retry(&xas, NULL));
115 XA_BUG_ON(xa, xas_retry(&xas, xa_mk_valu
[all...]
H A Dscatterlist.c1281 XA_STATE(xas, xa, index);
1285 xas_for_each(&xas, folio, ULONG_MAX) {
1286 if (xas_retry(&xas, folio))
/linux-master/fs/erofs/
H A Dfscache.c62 XA_STATE(xas, &req->mapping->i_pages, start_page);
65 xas_for_each(&xas, folio, last_page) {
66 if (xas_retry(&xas, folio))
/linux-master/fs/afs/
H A Ddir.c117 XA_STATE(xas, &mapping->i_pages, 0);
123 xas_for_each(&xas, folio, last) {
124 if (xas_retry(&xas, folio))
192 XA_STATE(xas, &mapping->i_pages, 0);
201 xas_for_each(&xas, folio, last) {
202 if (xas_retry(&xas, folio))
226 XA_STATE(xas, &mapping->i_pages, 0);
232 xas_for_each(&xas, folio, last) {
233 if (xas_retry(&xas, folio))
/linux-master/drivers/infiniband/sw/rxe/
H A Drxe_mr.c96 XA_STATE(xas, &mr->page_list, 0);
106 xas_lock(&xas);
112 xas_set_err(&xas, -EINVAL);
116 xas_store(&xas, page);
117 if (xas_error(&xas))
119 xas_next(&xas);
123 xas_unlock(&xas);
124 } while (xas_nomem(&xas, GFP_KERNEL));
126 return xas_error(&xas);
161 XA_STATE(xas,
[all...]
/linux-master/drivers/infiniband/core/
H A Ddevice.c158 XA_STATE(xas, xa, *indexp);
163 entry = xas_find_marked(&xas, ULONG_MAX, filter);
166 } while (xas_retry(&xas, entry));
170 *indexp = xas.xa_index;

Completed in 431 milliseconds

12