Home
last modified time | relevance | path

Searched refs:buddy (Results 1 – 23 of 23) sorted by relevance

/linux/drivers/infiniband/hw/mthca/
H A Dmthca_mr.c42 struct mthca_buddy *buddy; member
84 static u32 mthca_buddy_alloc(struct mthca_buddy *buddy, int order) in mthca_buddy_alloc() argument
90 spin_lock(&buddy->lock); in mthca_buddy_alloc()
92 for (o = order; o <= buddy->max_order; ++o) in mthca_buddy_alloc()
93 if (buddy->num_free[o]) { in mthca_buddy_alloc()
94 m = 1 << (buddy->max_order - o); in mthca_buddy_alloc()
95 seg = find_first_bit(buddy->bits[o], m); in mthca_buddy_alloc()
100 spin_unlock(&buddy->lock); in mthca_buddy_alloc()
104 __clear_bit(seg, buddy->bits[o]); in mthca_buddy_alloc()
105 --buddy->num_free[o]; in mthca_buddy_alloc()
[all …]
/linux/drivers/net/ethernet/mellanox/mlx5/core/steering/hws/
H A Dpool.c114 struct mlx5hws_buddy_mem *buddy; in hws_pool_buddy_init() local
116 buddy = mlx5hws_buddy_create(pool->alloc_log_sz); in hws_pool_buddy_init()
117 if (!buddy) { in hws_pool_buddy_init()
126 mlx5hws_buddy_cleanup(buddy); in hws_pool_buddy_init()
127 kfree(buddy); in hws_pool_buddy_init()
131 pool->db.buddy = buddy; in hws_pool_buddy_init()
139 struct mlx5hws_buddy_mem *buddy = pool->db.buddy; in hws_pool_buddy_db_get_chunk() local
141 if (!buddy) { in hws_pool_buddy_db_get_chunk()
146 chunk->offset = mlx5hws_buddy_alloc_mem(buddy, chunk->order); in hws_pool_buddy_db_get_chunk()
156 struct mlx5hws_buddy_mem *buddy; in hws_pool_buddy_db_put_chunk() local
[all …]
/linux/drivers/net/ethernet/mellanox/mlx5/core/steering/sws/
H A Dmlx5dr.h185 int mlx5dr_buddy_init(struct mlx5dr_icm_buddy_mem *buddy,
187 void mlx5dr_buddy_cleanup(struct mlx5dr_icm_buddy_mem *buddy);
188 int mlx5dr_buddy_alloc_mem(struct mlx5dr_icm_buddy_mem *buddy,
191 void mlx5dr_buddy_free_mem(struct mlx5dr_icm_buddy_mem *buddy,
/linux/arch/mips/include/asm/
H A Dpgtable.h130 pte_t *buddy = ptep_buddy(ptep); local
135 if (pte_none(*buddy)) {
137 buddy->pte_low |= _PAGE_GLOBAL;
138 buddy->pte_high |= _PAGE_GLOBAL;
176 pte_t *buddy = ptep_buddy(ptep); local
182 cmpxchg64(&buddy->pte, 0, _PAGE_GLOBAL);
184 cmpxchg(&buddy->pte, 0, _PAGE_GLOBAL);
/linux/mm/
H A Dinternal.h648 static inline bool page_is_buddy(struct page *page, struct page *buddy, in page_is_buddy() argument
651 if (!page_is_guard(buddy) && !PageBuddy(buddy)) in page_is_buddy()
654 if (buddy_order(buddy) != order) in page_is_buddy()
661 if (page_zone_id(page) != page_zone_id(buddy)) in page_is_buddy()
664 VM_BUG_ON_PAGE(page_count(buddy) != 0, buddy); in page_is_buddy()
710 struct page *buddy; in find_buddy_page_pfn() local
712 buddy = page + (__buddy_pfn - pfn); in find_buddy_page_pfn()
716 if (page_is_buddy(page, buddy, order)) in find_buddy_page_pfn()
717 return buddy; in find_buddy_page_pfn()
H A Dpage_alloc.c960 struct page *buddy; in __free_one_page() local
980 buddy = find_buddy_page_pfn(page, pfn, order, &buddy_pfn); in __free_one_page()
981 if (!buddy) in __free_one_page()
991 buddy_mt = get_pfnblock_migratetype(buddy, buddy_pfn); in __free_one_page()
1003 if (page_is_guard(buddy)) in __free_one_page()
1004 clear_page_guard(zone, buddy, order); in __free_one_page()
1006 __del_page_from_free_list(buddy, zone, order, buddy_mt); in __free_one_page()
1014 change_pageblock_range(buddy, order, migratetype); in __free_one_page()
2103 struct page *buddy; in __move_freepages_block_isolate() local
2119 buddy = pfn_to_page(buddy_pfn); in __move_freepages_block_isolate()
[all …]
H A Ddebug.c57 DEF_PAGETYPE_NAME(buddy),
H A DKconfig643 free pages from the buddy allocator for the purpose of reporting
/linux/Documentation/gpu/rfc/
H A Di915_gem_lmem.rst20 * Move i915 buddy allocator over to TTM
/linux/Documentation/trace/
H A Devents-kmem.rst56 the per-CPU allocator (high performance) or the buddy allocator.
58 If pages are allocated directly from the buddy allocator, the
/linux/drivers/staging/rtl8723bs/core/
H A Drtw_pwrctrl.c86 struct adapter *buddy = adapter->pbuddy_adapter; in rtw_pwr_unassociated_idle() local
106 if (buddy) { in rtw_pwr_unassociated_idle()
107 struct mlme_priv *b_pmlmepriv = &(buddy->mlmepriv); in rtw_pwr_unassociated_idle()
/linux/Documentation/ABI/testing/
H A Dsysfs-fs-ext437 requests (as a power of 2) where the buddy cache is
/linux/include/linux/
H A Dpage-flags.h1003 PAGE_TYPE_OPS(Buddy, buddy, buddy)
/linux/Documentation/admin-guide/sysctl/
H A Dvm.rst645 buddy allocator will be optimized (7 pages per 2MB HugeTLB page and 4095 pages
648 to the buddy allocator, the vmemmap pages representing that range needs to be
655 of allocation or freeing HugeTLB pages between the HugeTLB pool and the buddy
658 pool to the buddy allocator since the allocation of vmemmap pages could be
662 buddy allocator will not be optimized meaning the extra overhead at allocation
663 time from buddy allocator disappears, whereas already optimized HugeTLB pages
/linux/Documentation/admin-guide/mm/
H A Dpagemap.rst115 A free memory block managed by the buddy system allocator.
116 The buddy system organizes free memory in blocks of various orders.
/linux/drivers/gpu/drm/xe/
H A Dxe_svm.c707 struct drm_buddy *buddy = vram_to_buddy(vr);
711 for (i = 0; i < drm_buddy_block_size(buddy, block) >> PAGE_SHIFT; ++i)
695 struct drm_buddy *buddy = vram_to_buddy(vr); xe_svm_populate_devmem_pfn() local
/linux/drivers/gpu/drm/
H A DKconfig224 A page based buddy allocator
/linux/Documentation/admin-guide/kdump/
H A Dvmcoreinfo.rst196 free_area ranges. NR_PAGE_ORDERS is used by the zone buddy allocator.
/linux/Documentation/RCU/
H A Drcu_dereference.rst63 classic buddy-allocator algorithms.
/linux/lib/
H A DKconfig.debug1166 bool "Prefer the buddy CPU hardlockup detector"
1171 Say Y here to prefer the buddy hardlockup detector over the perf one.
1173 With the buddy detector, each CPU uses its softlockup hrtimer
1205 # Both the "perf" and "buddy" hardlockup detectors count hrtimer
/linux/Documentation/mm/
H A Dhugetlbfs_reserv.rst229 an attempt will be made to allocate one using the buddy allocator. This
/linux/Documentation/filesystems/
H A Dproc.rst1636 mb_groups details of multiblock allocator buddy cache of free blocks
/linux/Documentation/admin-guide/
H A Dkernel-parameters.txt1196 buddy allocator. Bigger value increase the probability
4722 poisoning on the buddy allocator, available with