Home
last modified time | relevance | path

Searched refs:mas (Results 1 – 25 of 35) sorted by relevance

12

/linux-6.15/lib/
H A Dmaple_tree.c1031 mas->node = mas_slot(mas, slots, mas->offset); in mas_descend()
2158 MA_STATE(parent, mas->tree, mas->index, mas->last); in mas_next_sibling()
2208 mas->offset = mas->index = mas->min; in mas_wr_node_walk()
2831 MA_STATE(r_mas, mas->tree, mas->index, mas->last); in mas_spanning_rebalance()
2956 MA_STATE(l_mas, mas->tree, mas->index, mas->last); in mas_rebalance()
2957 MA_STATE(r_mas, mas->tree, mas->index, mas->last); in mas_rebalance()
3013 MA_STATE(l_mas, mas->tree, mas->index, mas->last); in mas_destroy_rebalance()
3729 mas = wr_mas->mas; in mas_wr_spanning_store()
4520 mas->last = mas->max; in mas_prev_slot()
5375 if (MAS_WARN_ON(mas, mas->index > mas->last)) in mas_store()
[all …]
H A Dtest_maple_tree.c1424 mas_store_gfp(&mas, &mas, GFP_KERNEL); in check_store_null()
1438 mas_store_gfp(&mas, &mas, GFP_KERNEL); in check_store_null()
1452 mas_store_gfp(&mas, &mas, GFP_KERNEL); in check_store_null()
1467 mas_store_gfp(&mas, &mas, GFP_KERNEL); in check_store_null()
3308 mas.index = mas.last = 10; in check_state_handling()
3363 mas.index = mas.last = 0; in check_state_handling()
3398 mas.index = mas.last = 0; in check_state_handling()
3585 MAS_BUG_ON(&mas, !mas_is_active(&mas)); in check_state_handling()
3599 MAS_BUG_ON(&mas, !mas_is_active(&mas)); in check_state_handling()
3724 MAS_BUG_ON(&mas, mas.index != location); in alloc_cyclic_testing()
[all …]
H A Dalloc_tag.c394 mas_erase(&mas); in clean_unused_module_areas_locked()
411 mas_reset(mas); in find_aligned_area()
421 mas_reset(mas); in find_aligned_area()
514 mas_lock(&mas); in reserve_module_tags()
521 offset = mas.index; in reserve_module_tags()
538 mas_erase(&mas); in reserve_module_tags()
548 mas_unlock(&mas); in reserve_module_tags()
582 mas_lock(&mas); in release_module_tags()
618 mas_unlock(&mas); in release_module_tags()
654 mas_lock(&mas); in replace_module()
[all …]
H A Dinterval_tree_test.c208 if (mas->status == ma_overflow) in mas_cur_span()
212 state->is_hole = mas_walk(mas) ? 0 : 1; in mas_cur_span()
215 state->first_index : mas->index; in mas_cur_span()
220 cur_last = mas->last > state->last_index ? in mas_cur_span()
221 state->last_index : mas->last; in mas_cur_span()
236 if (mas->status != ma_overflow) in mas_cur_span()
237 mas_set(mas, cur_last + 1); in mas_cur_span()
248 MA_STATE(mas, &tree, 0, 0); in span_iteration_check()
280 mas_set(&mas, start); in span_iteration_check()
283 mas_cur_span(&mas, &mas_span); in span_iteration_check()
[all …]
/linux-6.15/drivers/spi/
H A Dspi-geni-qcom.c498 ret = get_spi_clk_cfg(mas->cur_speed_hz, mas, in setup_gsi_xfer()
574 fifo_size = mas->tx_fifo_depth * mas->fifo_width_bits / mas->cur_bits_per_word; in geni_can_dma()
626 mas->tx = dma_request_chan(mas->dev, "tx"); in spi_geni_grab_gpi_chan()
628 ret = dev_err_probe(mas->dev, PTR_ERR(mas->tx), in spi_geni_grab_gpi_chan()
633 mas->rx = dma_request_chan(mas->dev, "rx"); in spi_geni_grab_gpi_chan()
635 ret = dev_err_probe(mas->dev, PTR_ERR(mas->rx), in spi_geni_grab_gpi_chan()
744 if (mas->fifo_width_bits % mas->cur_bits_per_word) in geni_byte_per_fifo_word()
769 tx_buf = mas->cur_xfer->tx_buf + mas->cur_xfer->len - mas->tx_rem_bytes; in geni_spi_handle_tx()
818 rx_buf = mas->cur_xfer->rx_buf + mas->cur_xfer->len - mas->rx_rem_bytes; in geni_spi_handle_rx()
993 mas->tx_rem_bytes, mas->cur_bits_per_word); in geni_spi_isr()
[all …]
/linux-6.15/drivers/base/regmap/
H A Dregcache-maple.c64 index = mas.index; in regcache_maple_write()
65 lower_sz = (mas.last - mas.index + 1) * sizeof(unsigned long); in regcache_maple_write()
70 last = mas.last; in regcache_maple_write()
71 upper_sz = (mas.last - mas.index + 1) * sizeof(unsigned long); in regcache_maple_write()
91 mas_lock(&mas); in regcache_maple_write()
96 mas_unlock(&mas); in regcache_maple_write()
120 mas_lock(&mas); in regcache_maple_drop()
158 mas_lock(&mas); in regcache_maple_drop()
197 mas_pause(mas); in regcache_maple_sync_block()
302 mas_lock(&mas); in regcache_maple_exit()
[all …]
/linux-6.15/include/linux/
H A Dmaple_tree.h468 #define mas_lock(mas) spin_lock(&((mas)->tree->ma_lock)) argument
471 #define mas_unlock(mas) spin_unlock(&((mas)->tree->ma_lock)) argument
548 mas->tree = tree; in mas_init()
549 mas->index = mas->last = addr; in mas_init()
552 mas->node = NULL; in mas_init()
578 mas->node = NULL; in mas_reset()
747 MAS_WARN_ON(mas, mas_is_active(mas) && in __mas_set_range()
748 (mas->index > start || mas->last < start)); in __mas_set_range()
749 mas->index = start; in __mas_set_range()
750 mas->last = last; in __mas_set_range()
[all …]
H A Dmm.h1079 return mas_find(&vmi->mas, max - 1); in vma_find()
1100 return mas_prev(&vmi->mas, 0); in vma_prev()
1107 mas_store_gfp(&vmi->mas, NULL, gfp); in vma_iter_clear_gfp()
1108 if (unlikely(mas_is_err(&vmi->mas))) in vma_iter_clear_gfp()
1117 mas_destroy(&vmi->mas); in vma_iter_free()
1123 vmi->mas.index = vma->vm_start; in vma_iter_bulk_store()
1124 vmi->mas.last = vma->vm_end - 1; in vma_iter_bulk_store()
1125 mas_store(&vmi->mas, vma); in vma_iter_bulk_store()
1126 if (unlikely(mas_is_err(&vmi->mas))) in vma_iter_bulk_store()
1135 mas_pause(&vmi->mas); in vma_iter_invalidate()
[all …]
H A Dmm_types.h1259 struct ma_state mas; member
1264 .mas = { \
1275 mas_init(&vmi->mas, &mm->mm_mt, addr); in vma_iter_init()
/linux-6.15/include/trace/events/
H A Dmaple_tree.h17 TP_ARGS(fn, mas),
30 __entry->min = mas->min;
31 __entry->max = mas->max;
33 __entry->last = mas->last;
34 __entry->node = mas->node;
50 TP_ARGS(fn, mas),
63 __entry->min = mas->min;
64 __entry->max = mas->max;
85 TP_ARGS(fn, mas, piv, val),
100 __entry->min = mas->min;
[all …]
/linux-6.15/mm/
H A Dvma.h206 ((vmi->mas.index > vma->vm_start) || (vmi->mas.last < vma->vm_start))) in vma_iter_store_gfp()
333 return mas_prev(&vmi->mas, min); in vma_prev_limit()
376 mas_reset(&vmi->mas); in vma_iter_reset()
419 return mas_walk(&vmi->mas); in vma_iter_load()
429 if (MAS_WARN_ON(&vmi->mas, vmi->mas.status != ma_start && in vma_iter_store_overwrite()
433 vma->vm_end, vmi->mas.index, vmi->mas.last); in vma_iter_store_overwrite()
435 if (MAS_WARN_ON(&vmi->mas, vmi->mas.status != ma_start && in vma_iter_store_overwrite()
439 vmi->mas.index, vmi->mas.last); in vma_iter_store_overwrite()
444 ((vmi->mas.index > vma->vm_start) || (vmi->mas.last < vma->vm_start))) in vma_iter_store_overwrite()
460 return vmi->mas.index; in vma_iter_addr()
[all …]
H A Dexecmem.c108 return mas->last - mas->index + 1; in mas_range_len()
142 size_t size = mas_range_len(&mas); in execmem_cache_clean()
172 area = mas_walk(&mas); in execmem_cache_add()
173 if (area && mas.last == addr - 1) in execmem_cache_add()
174 lower = mas.index; in execmem_cache_add()
176 area = mas_next(&mas, ULONG_MAX); in execmem_cache_add()
178 upper = mas.last; in execmem_cache_add()
180 mas_set_range(&mas, lower, upper); in execmem_cache_add()
192 unsigned long addr = mas->index; in within_range()
354 area = mas_walk(&mas); in execmem_cache_free()
[all …]
H A Ddebug.c391 mas_dump(&vmi->mas); in vma_iter_dump_tree()
392 mt_dump(vmi->mas.tree, mt_dump_hex); in vma_iter_dump_tree()
H A Dvma.c438 void unmap_region(struct ma_state *mas, struct vm_area_struct *vma, in unmap_region() argument
446 unmap_vmas(&tlb, mas, vma, vma->vm_start, vma->vm_end, vma->vm_end, in unmap_region()
448 mas_set(mas, vma->vm_end); in unmap_region()
449 free_pgtables(&tlb, mas, vma, prev ? prev->vm_end : FIRST_USER_ADDRESS, in unmap_region()
1477 mt_init_flags(&mt_detach, vmi->mas.tree->ma_flags & MT_FLAGS_LOCK_MASK); in do_vmi_align_munmap()
2257 struct ma_state *mas = &vms->vmi->mas; in vms_abort_munmap_vmas() local
2270 mas_set_range(mas, vms->start, vms->end - 1); in vms_abort_munmap_vmas()
2271 mas_store_gfp(mas, NULL, GFP_KERNEL|__GFP_NOFAIL); in vms_abort_munmap_vmas()
2300 vmi->mas.tree->ma_flags & MT_FLAGS_LOCK_MASK); in __mmap_prepare()
2361 unmap_region(&vmi->mas, vma, map->prev, map->next); in __mmap_new_file_vma()
H A Dmmap.c1284 unmap_vmas(&tlb, &vmi.mas, vma, 0, ULONG_MAX, ULONG_MAX, false); in exit_mmap()
1295 free_pgtables(&tlb, &vmi.mas, vma, FIRST_USER_ADDRESS, in exit_mmap()
/linux-6.15/tools/testing/radix-tree/
H A Dmaple.c84 MT_BUG_ON(mas->tree, get_alloc_node_count(mas) != mas->alloc->total); in check_mas_alloc_node_count()
860 mas->offset = mas->index = mas->min; in mas_node_walk()
976 mas->end = mas_data_end(mas); in mas_tree_walk()
999 entry = mas_get_slot(mas, mas->offset); in mas_range_load()
1128 mas.index, mas.last); in check_erase2_testset()
35391 mas->node = mas_get_slot(mas, slot); in mas_dfs_preorder()
35463 mas.index = mas.last = count; in check_dfs_preorder()
36027 if (mas->last - mas->index >= in mas_subtree_max_range()
36073 mas_set(&mas, mas.min); in build_full_tree()
36079 step = mas.last - mas.index; in build_full_tree()
[all …]
/linux-6.15/tools/testing/vma/
H A Dvma_internal.h192 struct ma_state mas; member
197 .mas = { \
426 mas_pause(&vmi->mas); in vma_iter_invalidate()
591 return mas_find(&vmi->mas, max - 1); in vma_find()
598 mas_store_gfp(&vmi->mas, NULL, gfp); in vma_iter_clear_gfp()
624 return mas_prev(&vmi->mas, 0); in vma_prev()
629 mas_set(&vmi->mas, addr); in vma_iter_set()
639 mas_walk(&(vmi)->mas)
726 (void)mas; in unmap_vmas()
739 (void)mas; in free_pgtables()
[all …]
/linux-6.15/mm/damon/tests/
H A Dvaddr-kunit.h21 MA_STATE(mas, mt, 0, 0); in __link_vmas()
26 mas_lock(&mas); in __link_vmas()
28 mas_set_range(&mas, vmas[i].vm_start, vmas[i].vm_end - 1); in __link_vmas()
29 if (mas_store_gfp(&mas, &vmas[i], GFP_KERNEL)) in __link_vmas()
35 mas_unlock(&mas); in __link_vmas()
/linux-6.15/kernel/irq/
H A Dirqdesc.c176 MA_STATE(mas, &sparse_irqs, 0, 0); in irq_find_free_area()
178 if (mas_empty_area(&mas, from, MAX_SPARSE_IRQS, cnt)) in irq_find_free_area()
180 return mas.index; in irq_find_free_area()
196 MA_STATE(mas, &sparse_irqs, irq, irq); in irq_insert_desc()
197 WARN_ON(mas_store_gfp(&mas, desc, GFP_KERNEL) != 0); in irq_insert_desc()
202 MA_STATE(mas, &sparse_irqs, irq, irq); in delete_irq_desc()
203 mas_erase(&mas); in delete_irq_desc()
/linux-6.15/drivers/gpu/drm/nouveau/
H A Dnouveau_uvmm.c284 if (unlikely(mas_walk(&mas))) in __nouveau_uvma_region_insert()
287 if (unlikely(mas.last < last)) in __nouveau_uvma_region_insert()
290 mas.index = addr; in __nouveau_uvma_region_insert()
291 mas.last = last; in __nouveau_uvma_region_insert()
293 mas_store_gfp(&mas, reg, GFP_KERNEL); in __nouveau_uvma_region_insert()
324 mas_erase(&mas); in nouveau_uvma_region_remove()
362 MA_STATE(mas, &uvmm->region_mt, addr, 0); in nouveau_uvma_region_find_first()
364 return mas_find(&mas, addr + range - 1); in nouveau_uvma_region_find_first()
1893 MA_STATE(mas, &uvmm->region_mt, 0, 0); in nouveau_uvmm_fini()
1919 mas_for_each(&mas, reg, ULONG_MAX) { in nouveau_uvmm_fini()
[all …]
H A Dnouveau_debugfs.c209 MA_STATE(mas, &uvmm->region_mt, 0, 0); in nouveau_debugfs_gpuva_regions()
214 mas_for_each(&mas, reg, ULONG_MAX) in nouveau_debugfs_gpuva_regions()
/linux-6.15/Documentation/core-api/
H A Dmaple_tree.rst145 The advanced API is based around the ma_state, this is where the 'mas'
152 The maple state keeps track of the range start and end in mas->index and
153 mas->last, respectively.
155 mas_walk() will walk the tree to the location of mas->index and set the
156 mas->index and mas->last according to the range for the entry.
/linux-6.15/drivers/media/i2c/
H A Dmax9286.c749 struct max9286_asd *mas; in max9286_v4l2_notifier_register() local
751 mas = v4l2_async_nf_add_fwnode(&priv->notifier, source->fwnode, in max9286_v4l2_notifier_register()
753 if (IS_ERR(mas)) { in max9286_v4l2_notifier_register()
755 i, PTR_ERR(mas)); in max9286_v4l2_notifier_register()
757 return PTR_ERR(mas); in max9286_v4l2_notifier_register()
760 mas->source = source; in max9286_v4l2_notifier_register()
/linux-6.15/drivers/media/pci/saa7164/
H A Dsaa7164-api.c615 u8 mas; in saa7164_api_set_dif() local
621 mas = 0xd0; in saa7164_api_set_dif()
623 mas = 0xe0; in saa7164_api_set_dif()
639 buf[0x0a] = mas; in saa7164_api_set_dif()
/linux-6.15/kernel/
H A Dfork.c638 mt_clear_in_rcu(vmi.mas.tree); in dup_mmap()
739 mt_set_in_rcu(vmi.mas.tree); in dup_mmap()
752 mas_set_range(&vmi.mas, mpnt->vm_start, mpnt->vm_end - 1); in dup_mmap()
753 mas_store(&vmi.mas, XA_ZERO_ENTRY); in dup_mmap()

12