Home
last modified time | relevance | path

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

/linux-4.4.14/drivers/infiniband/hw/mthca/
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-4.4.14/drivers/net/ethernet/mellanox/mlx4/
Dmr.c46 static u32 mlx4_buddy_alloc(struct mlx4_buddy *buddy, int order) in mlx4_buddy_alloc() argument
52 spin_lock(&buddy->lock); in mlx4_buddy_alloc()
54 for (o = order; o <= buddy->max_order; ++o) in mlx4_buddy_alloc()
55 if (buddy->num_free[o]) { in mlx4_buddy_alloc()
56 m = 1 << (buddy->max_order - o); in mlx4_buddy_alloc()
57 seg = find_first_bit(buddy->bits[o], m); in mlx4_buddy_alloc()
62 spin_unlock(&buddy->lock); in mlx4_buddy_alloc()
66 clear_bit(seg, buddy->bits[o]); in mlx4_buddy_alloc()
67 --buddy->num_free[o]; in mlx4_buddy_alloc()
72 set_bit(seg ^ 1, buddy->bits[o]); in mlx4_buddy_alloc()
[all …]
/linux-4.4.14/mm/
Dzbud.c115 struct list_head buddy; member
223 enum buddy { enum
243 INIT_LIST_HEAD(&zhdr->buddy); in init_zbud_page()
259 static unsigned long encode_handle(struct zbud_header *zhdr, enum buddy bud) in encode_handle()
358 enum buddy bud; in zbud_alloc()
373 struct zbud_header, buddy); in zbud_alloc()
374 list_del(&zhdr->buddy); in zbud_alloc()
402 list_add(&zhdr->buddy, &pool->unbuddied[freechunks]); in zbud_alloc()
405 list_add(&zhdr->buddy, &pool->buddied); in zbud_alloc()
450 list_del(&zhdr->buddy); in zbud_free()
[all …]
Dpage_isolation.c83 struct page *buddy; in unset_migratetype_isolate() local
103 buddy = page + (buddy_idx - page_idx); in unset_migratetype_isolate()
105 if (pfn_valid_within(page_to_pfn(buddy)) && in unset_migratetype_isolate()
106 !is_migrate_isolate_page(buddy)) { in unset_migratetype_isolate()
Dpage_alloc.c600 static inline int page_is_buddy(struct page *page, struct page *buddy, in page_is_buddy() argument
603 if (!pfn_valid_within(page_to_pfn(buddy))) in page_is_buddy()
606 if (page_is_guard(buddy) && page_order(buddy) == order) { in page_is_buddy()
607 if (page_zone_id(page) != page_zone_id(buddy)) in page_is_buddy()
610 VM_BUG_ON_PAGE(page_count(buddy) != 0, buddy); in page_is_buddy()
615 if (PageBuddy(buddy) && page_order(buddy) == order) { in page_is_buddy()
621 if (page_zone_id(page) != page_zone_id(buddy)) in page_is_buddy()
624 VM_BUG_ON_PAGE(page_count(buddy) != 0, buddy); in page_is_buddy()
664 struct page *buddy; in __free_one_page() local
684 buddy = page + (buddy_idx - page_idx); in __free_one_page()
[all …]
/linux-4.4.14/arch/mips/include/asm/
Dpgtable.h146 pte_t *buddy = ptep_buddy(ptep); in set_pte() local
151 if (pte_none(*buddy)) in set_pte()
152 buddy->pte_high |= _PAGE_GLOBAL; in set_pte()
184 pte_t *buddy = ptep_buddy(ptep); in set_pte() local
215 : [buddy] "+m" (buddy->pte), in set_pte()
219 if (pte_none(*buddy)) in set_pte()
220 pte_val(*buddy) = pte_val(*buddy) | _PAGE_GLOBAL; in set_pte()
/linux-4.4.14/fs/ext4/
Dmballoc.c569 void *buddy; in __mb_check_buddy() local
579 buddy = mb_find_buddy(e4b, order, &max); in __mb_check_buddy()
580 MB_CHECK_ASSERT(buddy); in __mb_check_buddy()
583 MB_CHECK_ASSERT(buddy != buddy2); in __mb_check_buddy()
589 if (mb_test_bit(i, buddy)) { in __mb_check_buddy()
617 buddy = mb_find_buddy(e4b, 0, &max); in __mb_check_buddy()
619 if (!mb_test_bit(i, buddy)) { in __mb_check_buddy()
647 MB_CHECK_ASSERT(mb_test_bit(k + i, buddy)); in __mb_check_buddy()
665 void *buddy, ext4_grpblk_t first, ext4_grpblk_t len, in ext4_mb_mark_free_simple() argument
693 buddy + sbi->s_mb_offsets[min]); in ext4_mb_mark_free_simple()
[all …]
/linux-4.4.14/Documentation/trace/
Devents-kmem.txt48 the per-CPU allocator (high performance) or the buddy allocator.
50 If pages are allocated directly from the buddy allocator, the
/linux-4.4.14/fs/jfs/
Djfs_dmap.c2806 int budsz, buddy; in dbJoin() local
2836 buddy = leafno ^ budsz; in dbJoin()
2841 if (newval > leaf[buddy]) in dbJoin()
2845 if (newval < leaf[buddy]) in dbJoin()
2856 if (leafno < buddy) { in dbJoin()
2859 dbAdjTree(tp, buddy, NOFREE); in dbJoin()
2865 leafno = buddy; in dbJoin()
/linux-4.4.14/Documentation/vm/
Dpagemap.txt90 a free memory block managed by the buddy system allocator
91 The buddy system organizes free memory in blocks of various orders.
Dtranshuge.txt49 immediately in the buddy or through the VM), guest physical memory
/linux-4.4.14/Documentation/ABI/testing/
Dsysfs-fs-ext437 requests (as a power of 2) where the buddy cache is
/linux-4.4.14/include/trace/events/
Dext4.h978 __field( __u16, buddy )
1002 __entry->buddy = ac->ac_buddy;
1020 __entry->buddy ? 1 << __entry->buddy : 0)
/linux-4.4.14/Documentation/filesystems/
Dext4.txt432 mb_groups details of multiblock allocator buddy cache of free blocks
484 for requests (as a power of 2) where the buddy
Dproc.txt1345 mb_groups details of multiblock allocator buddy cache of free blocks
/linux-4.4.14/Documentation/
Dkernel-parameters.txt841 buddy allocator. Bigger value increase the probability