| /linux/include/linux/ |
| A D | min_heap.h | 45 heap->nr = 0; in __min_heap_init() 46 heap->size = size; in __min_heap_init() 48 heap->data = data; in __min_heap_init() 50 heap->data = heap->preallocated; in __min_heap_init() 60 return heap->nr ? heap->data : NULL; in __min_heap_peek() 70 return heap->nr == heap->size; in __min_heap_full() 159 heap->nr--; in __min_heap_pop() 195 if (WARN_ONCE(heap->nr >= heap->size, "Pushing on a full heap")) in __min_heap_push() 199 pos = heap->nr; in __min_heap_push() 201 heap->nr++; in __min_heap_push() [all …]
|
| A D | dma-heap.h | 23 struct dma_buf *(*allocate)(struct dma_heap *heap, 43 void *dma_heap_get_drvdata(struct dma_heap *heap); 45 const char *dma_heap_get_name(struct dma_heap *heap);
|
| /linux/lib/ |
| A D | test_min_heap.c | 35 struct min_heap_test *heap, in pop_verify_heap() argument 38 int *values = heap->data; in pop_verify_heap() 44 while (heap->nr > 0) { in pop_verify_heap() 68 struct min_heap_test heap = { in test_heapify_all() local 85 heap.nr = ARRAY_SIZE(values); in test_heapify_all() 86 for (i = 0; i < heap.nr; i++) in test_heapify_all() 118 while (heap.nr < heap.size) { in test_heap_push() 154 heap.nr = 0; in test_heap_pop_push() 172 struct min_heap_test heap; in test_heap_del() local 185 min_heap_del(&heap, get_random_u32() % heap.nr, &funcs, NULL); in test_heap_del() [all …]
|
| /linux/drivers/gpu/drm/panthor/ |
| A D | panthor_heap.c | 125 mutex_lock(&heap->lock); in panthor_free_heap_chunk() 127 heap->chunk_count--; in panthor_free_heap_chunk() 180 heap->chunk_count++; in panthor_alloc_heap_chunk() 226 if (!heap) in panthor_heap_destroy_locked() 231 kfree(heap); in panthor_heap_destroy_locked() 299 heap = kzalloc(sizeof(*heap), GFP_KERNEL); in panthor_heap_create() 300 if (!heap) { in panthor_heap_create() 347 kfree(heap); in panthor_heap_create() 379 if (!heap) { in panthor_heap_return_chunk() 442 if (!heap) { in panthor_heap_grow() [all …]
|
| /linux/drivers/dma-buf/ |
| A D | dma-heap.c | 66 dmabuf = heap->ops->allocate(heap, len, fd_flags, heap_flags); in dma_heap_buffer_alloc() 83 if (!heap) { in dma_heap_open() 203 return heap->priv; in dma_heap_get_drvdata() 215 return heap->name; in dma_heap_get_name() 239 heap = kzalloc(sizeof(*heap), GFP_KERNEL); in dma_heap_add() 240 if (!heap) in dma_heap_add() 260 ret = cdev_add(&heap->heap_cdev, heap->heap_devt, 1); in dma_heap_add() 269 heap->heap_devt, in dma_heap_add() 271 heap->name); in dma_heap_add() 294 return heap; in dma_heap_add() [all …]
|
| /linux/fs/ubifs/ |
| A D | lprops.c | 68 heap->arr[hpos] = heap->arr[ppos]; in move_up_lpt_heap() 102 heap->arr[hpos] = heap->arr[ppos]; in adjust_lpt_heap() 121 if (cpos >= heap->cnt) in adjust_lpt_heap() 133 heap->arr[hpos] = heap->arr[cpos]; in adjust_lpt_heap() 141 if (cpos >= heap->cnt) in adjust_lpt_heap() 147 heap->arr[hpos] = heap->arr[cpos]; in adjust_lpt_heap() 171 if (heap->cnt >= heap->max_cnt) { in add_to_lpt_heap() 223 heap->cnt -= 1; in remove_from_lpt_heap() 225 heap->arr[hpos] = heap->arr[heap->cnt]; in remove_from_lpt_heap() 227 adjust_lpt_heap(c, heap, heap->arr[hpos], hpos, cat); in remove_from_lpt_heap() [all …]
|
| A D | find.c | 45 struct ubifs_lpt_heap *heap; in valuable() local 51 heap = &c->lpt_heap[cat - 1]; in valuable() 52 if (heap->cnt < heap->max_cnt) in valuable() 130 struct ubifs_lpt_heap *heap; in scan_for_dirty() local 137 lprops = heap->arr[i]; in scan_for_dirty() 292 if (heap->cnt) { in ubifs_find_dirty_leb() 293 lp = heap->arr[0]; in ubifs_find_dirty_leb() 401 struct ubifs_lpt_heap *heap; in do_find_free_space() local 423 lprops = heap->arr[i]; in do_find_free_space() 820 struct ubifs_lpt_heap *heap; in find_dirty_idx_leb() local [all …]
|
| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ |
| A D | base.c | 258 mmu->type[mmu->type_nr].type = type | mmu->heap[heap].type; in nvkm_mmu_type() 259 mmu->type[mmu->type_nr].heap = heap; in nvkm_mmu_type() 269 mmu->heap[mmu->heap_nr].type = type; in nvkm_mmu_heap() 270 mmu->heap[mmu->heap_nr].size = size; in nvkm_mmu_heap() 282 int heap; in nvkm_mmu_host() local 285 heap = nvkm_mmu_heap(mmu, NVKM_MEM_HOST, ~0ULL); in nvkm_mmu_host() 286 nvkm_mmu_type(mmu, heap, type); in nvkm_mmu_host() 298 nvkm_mmu_type(mmu, heap, type); in nvkm_mmu_host() 323 u8 heap = NVKM_MEM_VRAM; in nvkm_mmu_vram() local 329 heap |= NVKM_MEM_COMP; in nvkm_mmu_vram() [all …]
|
| /linux/tools/include/nolibc/ |
| A D | stdlib.h | 72 struct nolibc_heap *heap; in free() local 78 munmap(heap, heap->len); in free() 133 struct nolibc_heap *heap; in malloc() local 136 len = sizeof(*heap) + len; in malloc() 140 if (__builtin_expect(heap == MAP_FAILED, 0)) in malloc() 143 heap->len = len; in malloc() 144 return heap->user_p; in malloc() 167 struct nolibc_heap *heap; in realloc() local 175 user_p_len = heap->len - sizeof(*heap); in realloc() 188 memcpy(ret, heap->user_p, user_p_len); in realloc() [all …]
|
| /linux/drivers/gpu/drm/nouveau/include/nvkm/core/ |
| A D | mm.h | 12 u8 heap; member 34 int nvkm_mm_init(struct nvkm_mm *, u8 heap, u32 offset, u32 length, u32 block); 36 int nvkm_mm_head(struct nvkm_mm *, u8 heap, u8 type, u32 size_max, 38 int nvkm_mm_tail(struct nvkm_mm *, u8 heap, u8 type, u32 size_max, 44 nvkm_mm_heap_size(struct nvkm_mm *mm, u8 heap) in nvkm_mm_heap_size() argument 49 if (node->heap == heap) in nvkm_mm_heap_size()
|
| /linux/drivers/gpu/drm/nouveau/nvkm/core/ |
| A D | mm.c | 99 b->heap = a->heap; in region_head() 111 nvkm_mm_head(struct nvkm_mm *mm, u8 heap, u8 type, u32 size_max, u32 size_min, in nvkm_mm_head() argument 122 if (unlikely(heap != NVKM_MM_HEAP_ANY)) { in nvkm_mm_head() 123 if (this->heap != heap) in nvkm_mm_head() 175 b->heap = a->heap; in region_tail() 186 nvkm_mm_tail(struct nvkm_mm *mm, u8 heap, u8 type, u32 size_max, u32 size_min, in nvkm_mm_tail() argument 198 if (unlikely(heap != NVKM_MM_HEAP_ANY)) { in nvkm_mm_tail() 199 if (this->heap != heap) in nvkm_mm_tail() 240 nvkm_mm_init(struct nvkm_mm *mm, u8 heap, u32 offset, u32 length, u32 block) in nvkm_mm_init() argument 277 node->heap = heap; in nvkm_mm_init()
|
| A D | gpuobj.c | 180 ret = nvkm_mm_head(&parent->heap, 0, 1, size, size, in nvkm_gpuobj_ctor() 183 ret = nvkm_mm_tail(&parent->heap, 0, 1, size, size, in nvkm_gpuobj_ctor() 211 return nvkm_mm_init(&gpuobj->heap, 0, 0, gpuobj->size, 1); in nvkm_gpuobj_ctor() 220 nvkm_mm_free(&gpuobj->parent->heap, &gpuobj->node); in nvkm_gpuobj_del() 221 nvkm_mm_fini(&gpuobj->heap); in nvkm_gpuobj_del()
|
| /linux/drivers/md/bcache/ |
| A D | movinggc.c | 227 ca->heap.nr = 0; in bch_moving_gc() 236 if (!min_heap_full(&ca->heap)) { in bch_moving_gc() 238 min_heap_push(&ca->heap, &b, &callbacks, NULL); in bch_moving_gc() 243 ca->heap.data[0] = b; in bch_moving_gc() 244 min_heap_sift_down(&ca->heap, 0, &callbacks, NULL); in bch_moving_gc() 249 if (ca->heap.nr) { in bch_moving_gc() 250 b = min_heap_peek(&ca->heap)[0]; in bch_moving_gc() 251 min_heap_pop(&ca->heap, &callbacks, NULL); in bch_moving_gc() 256 while (ca->heap.nr) { in bch_moving_gc() 257 b = min_heap_peek(&ca->heap)[0]; in bch_moving_gc() [all …]
|
| A D | bset.c | 119 if (next < iter->heap.data->end && in bch_btree_iter_next_check() 1106 return !iter->heap.nr; in btree_iter_end() 1118 BUG_ON(!min_heap_push(&iter->heap, in bch_btree_iter_push() 1131 iter->heap.size = ARRAY_SIZE(iter->heap.preallocated); in __bch_btree_iter_init() 1132 iter->heap.nr = 0; in __bch_btree_iter_init() 1166 ret = iter->heap.data->k; in __bch_btree_iter_next() 1167 iter->heap.data->k = bkey_next(iter->heap.data->k); in __bch_btree_iter_next() 1169 if (iter->heap.data->k > iter->heap.data->end) { in __bch_btree_iter_next() 1171 iter->heap.data->k = iter->heap.data->end; in __bch_btree_iter_next() 1174 if (iter->heap.data->k == iter->heap.data->end) { in __bch_btree_iter_next() [all …]
|
| A D | util.h | 34 #define init_heap(heap, _size, gfp) \ argument 37 (heap)->nr = 0; \ 38 (heap)->size = (_size); \ 39 _bytes = (heap)->size * sizeof(*(heap)->data); \ 40 (heap)->data = kvmalloc(_bytes, (gfp) & GFP_KERNEL); \ 41 (heap)->data; \ 44 #define free_heap(heap) \ argument 46 kvfree((heap)->data); \ 47 (heap)->data = NULL; \
|
| A D | alloc.c | 211 ca->heap.nr = 0; in invalidate_buckets_lru() 217 if (!min_heap_full(&ca->heap)) in invalidate_buckets_lru() 218 min_heap_push(&ca->heap, &b, &bucket_max_cmp_callback, ca); in invalidate_buckets_lru() 219 else if (!new_bucket_max_cmp(&b, min_heap_peek(&ca->heap), ca)) { in invalidate_buckets_lru() 220 ca->heap.data[0] = b; in invalidate_buckets_lru() 221 min_heap_sift_down(&ca->heap, 0, &bucket_max_cmp_callback, ca); in invalidate_buckets_lru() 225 min_heapify_all(&ca->heap, &bucket_min_cmp_callback, ca); in invalidate_buckets_lru() 228 if (!ca->heap.nr) { in invalidate_buckets_lru() 237 b = min_heap_peek(&ca->heap)[0]; in invalidate_buckets_lru() 238 min_heap_pop(&ca->heap, &bucket_min_cmp_callback, ca); in invalidate_buckets_lru()
|
| /linux/Documentation/ABI/testing/ |
| A D | sysfs-kernel-mm-cma | 6 heap name (also sometimes called CMA areas). 8 Each CMA heap subdirectory (that is, each 9 /sys/kernel/mm/cma/<cma-heap-name> directory) contains the 15 What: /sys/kernel/mm/cma/<cma-heap-name>/alloc_pages_success 21 What: /sys/kernel/mm/cma/<cma-heap-name>/alloc_pages_fail 27 What: /sys/kernel/mm/cma/<cma-heap-name>/release_pages_success
|
| /linux/drivers/gpu/drm/nouveau/nvif/ |
| A D | mmu.c | 35 kfree(mmu->heap); in nvif_mmu_dtor() 53 mmu->heap = NULL; in nvif_mmu_ctor() 72 mmu->heap = kmalloc_array(mmu->heap_nr, sizeof(*mmu->heap), in nvif_mmu_ctor() 76 if (ret = -ENOMEM, !mmu->heap || !mmu->type) in nvif_mmu_ctor() 92 mmu->heap[i].size = args.size; in nvif_mmu_ctor() 112 mmu->type[i].heap = args.heap; in nvif_mmu_ctor()
|
| /linux/drivers/dma-buf/heaps/ |
| A D | Kconfig | 5 Choose this option to enable the system dmabuf heap. The system heap 12 Choose this option to enable dma-buf CMA heap. This heap is backed
|
| A D | cma_heap.c | 27 struct dma_heap *heap; member 32 struct cma_heap *heap; member 247 struct cma_heap *cma_heap = buffer->heap; in cma_heap_dma_buf_release() 275 static struct dma_buf *cma_heap_allocate(struct dma_heap *heap, in cma_heap_allocate() argument 280 struct cma_heap *cma_heap = dma_heap_get_drvdata(heap); in cma_heap_allocate() 339 buffer->heap = cma_heap; in cma_heap_allocate() 343 exp_info.exp_name = dma_heap_get_name(heap); in cma_heap_allocate() 383 cma_heap->heap = dma_heap_add(&exp_info); in __add_cma_heap() 384 if (IS_ERR(cma_heap->heap)) { in __add_cma_heap() 385 int ret = PTR_ERR(cma_heap->heap); in __add_cma_heap()
|
| /linux/lib/zlib_deflate/ |
| A D | deftree.c | 298 top = s->heap[SMALLEST]; \ 299 s->heap[SMALLEST] = s->heap[s->heap_len--]; \ 323 int v = s->heap[k]; in pqdownheap() 328 smaller(tree, s->heap[j+1], s->heap[j], s->depth)) { in pqdownheap() 335 s->heap[k] = s->heap[j]; k = j; in pqdownheap() 340 s->heap[k] = v; in pqdownheap() 379 n = s->heap[h]; in gen_bitlen() 420 m = s->heap[--h]; in gen_bitlen() 539 s->heap[--(s->heap_max)] = m; in build_tree() 552 s->heap[SMALLEST] = node++; in build_tree() [all …]
|
| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/instmem/ |
| A D | nv04.c | 32 struct nvkm_mm heap; member 104 nvkm_mm_free(&iobj->imem->heap, &iobj->node); in nv04_instobj_dtor() 137 ret = nvkm_mm_head(&imem->heap, 0, 1, size, size, align ? align : 1, &iobj->node); in nv04_instobj_new() 210 ret = nvkm_mm_init(&imem->heap, 0, 0, imem->base.reserved, 1); in nv04_instmem_oneinit() 248 nvkm_mm_fini(&imem->heap); in nv04_instmem_dtor()
|
| A D | nv40.c | 32 struct nvkm_mm heap; member 103 nvkm_mm_free(&iobj->imem->heap, &iobj->node); in nv40_instobj_dtor() 136 ret = nvkm_mm_head(&imem->heap, 0, 1, size, size, align ? align : 1, &iobj->node); in nv40_instobj_new() 179 ret = nvkm_mm_init(&imem->heap, 0, 0, imem->base.reserved, 1); in nv40_instmem_oneinit() 221 nvkm_mm_fini(&imem->heap); in nv40_instmem_dtor()
|
| /linux/fs/bcachefs/ |
| A D | util.h | 58 #define init_heap(heap, _size, gfp) \ argument 60 (heap)->nr = 0; \ 61 (heap)->size = (_size); \ 62 (heap)->data = kvmalloc((heap)->size * sizeof((heap)->data[0]),\ 66 #define free_heap(heap) \ argument 68 kvfree((heap)->data); \ 69 (heap)->data = NULL; \
|
| /linux/arch/x86/boot/compressed/ |
| A D | misc.c | 408 memptr heap = (memptr)boot_heap; in extract_kernel() local 454 free_mem_ptr = heap; /* Heap */ in extract_kernel() 455 free_mem_end_ptr = heap + BOOT_HEAP_SIZE; in extract_kernel() 497 if (heap > 0x3fffffffffffUL) in extract_kernel() 502 if (heap > ((-__PAGE_OFFSET-(128<<20)-1) & 0x7fffffff)) in extract_kernel()
|