Home
last modified time | relevance | path

Searched refs:heap (Results 1 – 25 of 96) sorted by relevance

1234

/linux/drivers/gpu/drm/panthor/
H A Dpanthor_heap.c126 struct panthor_heap *heap, in panthor_free_heap_chunk() argument
129 mutex_lock(&heap->lock); in panthor_free_heap_chunk()
131 heap->chunk_count--; in panthor_free_heap_chunk()
132 mutex_unlock(&heap->lock); in panthor_free_heap_chunk()
134 atomic_sub(heap->chunk_size, &pool->size); in panthor_free_heap_chunk()
141 struct panthor_heap *heap, in panthor_alloc_heap_chunk() argument
152 chunk->bo = panthor_kernel_bo_create(pool->ptdev, pool->vm, heap->chunk_size, in panthor_alloc_heap_chunk()
169 if (initial_chunk && !list_empty(&heap->chunks)) { in panthor_alloc_heap_chunk()
173 prev_chunk = list_first_entry(&heap->chunks, in panthor_alloc_heap_chunk()
179 (heap->chunk_size >> 12); in panthor_alloc_heap_chunk()
[all …]
/linux/drivers/dma-buf/
H A Ddma-heap.c57 static int dma_heap_buffer_alloc(struct dma_heap *heap, size_t len, in dma_heap_buffer_alloc() argument
72 dmabuf = heap->ops->allocate(heap, len, fd_flags, heap_flags); in dma_heap_buffer_alloc()
86 struct dma_heap *heap; in dma_heap_open() local
88 heap = xa_load(&dma_heap_minors, iminor(inode)); in dma_heap_open()
89 if (!heap) { in dma_heap_open()
95 file->private_data = heap; in dma_heap_open()
104 struct dma_heap *heap = file->private_data; in dma_heap_ioctl_allocate() local
116 fd = dma_heap_buffer_alloc(heap, heap_allocation->len, in dma_heap_ioctl_allocate()
207 void *dma_heap_get_drvdata(struct dma_heap *heap) in dma_heap_get_drvdata() argument
209 return heap->priv; in dma_heap_get_drvdata()
[all …]
/linux/fs/ubifs/
H A Dlprops.c50 static void move_up_lpt_heap(struct ubifs_info *c, struct ubifs_lpt_heap *heap, in move_up_lpt_heap() argument
63 val2 = get_heap_comp_val(heap->arr[ppos], cat); in move_up_lpt_heap()
67 heap->arr[ppos]->hpos = hpos; in move_up_lpt_heap()
68 heap->arr[hpos] = heap->arr[ppos]; in move_up_lpt_heap()
69 heap->arr[ppos] = lprops; in move_up_lpt_heap()
87 static void adjust_lpt_heap(struct ubifs_info *c, struct ubifs_lpt_heap *heap, in adjust_lpt_heap() argument
97 val2 = get_heap_comp_val(heap->arr[ppos], cat); in adjust_lpt_heap()
101 heap->arr[ppos]->hpos = hpos; in adjust_lpt_heap()
102 heap->arr[hpos] = heap->arr[ppos]; in adjust_lpt_heap()
103 heap->arr[ppos] = lprops; in adjust_lpt_heap()
[all …]
H A Dfind.c45 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
135 heap = &c->lpt_heap[LPROPS_FREE - 1]; in scan_for_dirty()
136 for (i = 0; i < heap->cnt; i++) { in scan_for_dirty()
137 lprops = heap->arr[i]; in scan_for_dirty()
226 struct ubifs_lpt_heap *heap, *idx_heap; in ubifs_find_dirty_leb() local
272 heap = &c->lpt_heap[LPROPS_DIRTY - 1]; in ubifs_find_dirty_leb()
292 if (heap->cnt) { in ubifs_find_dirty_leb()
[all …]
H A Dlpt_commit.c764 struct ubifs_lpt_heap *heap; in populate_lsave() local
791 heap = &c->lpt_heap[LPROPS_DIRTY_IDX - 1]; in populate_lsave()
792 for (i = 0; i < heap->cnt; i++) { in populate_lsave()
793 c->lsave[cnt++] = heap->arr[i]->lnum; in populate_lsave()
797 heap = &c->lpt_heap[LPROPS_DIRTY - 1]; in populate_lsave()
798 for (i = 0; i < heap->cnt; i++) { in populate_lsave()
799 c->lsave[cnt++] = heap->arr[i]->lnum; in populate_lsave()
803 heap = &c->lpt_heap[LPROPS_FREE - 1]; in populate_lsave()
804 for (i = 0; i < heap->cnt; i++) { in populate_lsave()
805 c->lsave[cnt++] = heap->arr[i]->lnum; in populate_lsave()
[all …]
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/
H A Dbase.c255 nvkm_mmu_type(struct nvkm_mmu *mmu, int heap, u8 type) in nvkm_mmu_type() argument
257 if (heap >= 0 && !WARN_ON(mmu->type_nr == ARRAY_SIZE(mmu->type))) { in nvkm_mmu_type()
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()
268 if (!WARN_ON(mmu->heap_nr == ARRAY_SIZE(mmu->heap))) { in nvkm_mmu_heap()
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()
[all …]
/linux/tools/include/nolibc/
H A Dstdlib.h94 struct nolibc_heap *heap; in free() local
99 heap = container_of(ptr, struct nolibc_heap, user_p); in free()
100 munmap(heap, heap->len); in free()
131 struct nolibc_heap *heap; in malloc() local
134 len = sizeof(*heap) + len; in malloc()
136 heap = mmap(NULL, len, PROT_READ|PROT_WRITE, MAP_ANONYMOUS|MAP_PRIVATE, in malloc()
138 if (__builtin_expect(heap == MAP_FAILED, 0)) in malloc()
141 heap->len = len; in malloc()
142 return heap->user_p; in malloc()
165 struct nolibc_heap *heap; in realloc() local
[all …]
/linux/drivers/gpu/drm/nouveau/include/nvkm/core/
H A Dmm.h12 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/
H A Dmm.c99 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()
H A Dgpuobj.c180 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/tee/
H A Dtee_heap.c18 struct dma_heap *heap; member
29 struct tee_dma_heap *heap; member
153 buf->heap->pool->ops->free(buf->heap->pool, &buf->table); in tee_heap_buf_free()
154 mutex_lock(&buf->heap->mu); in tee_heap_buf_free()
155 put_tee_heap(buf->heap); in tee_heap_buf_free()
156 mutex_unlock(&buf->heap->mu); in tee_heap_buf_free()
168 static struct dma_buf *tee_dma_heap_alloc(struct dma_heap *heap, in tee_dma_heap_alloc() argument
172 struct tee_dma_heap *h = dma_heap_get_drvdata(heap); in tee_dma_heap_alloc()
197 buf->heap = h; in tee_dma_heap_alloc()
273 h->heap = dma_heap_add(&exp_info); in alloc_dma_heap()
[all …]
/linux/drivers/gpu/drm/nouveau/nvif/
H A Dmmu.c35 kfree(mmu->heap); in nvif_mmu_dtor()
53 mmu->heap = NULL; in nvif_mmu_ctor()
72 mmu->heap = kmalloc_objs(*mmu->heap, mmu->heap_nr); in nvif_mmu_ctor()
74 if (ret = -ENOMEM, !mmu->heap || !mmu->type) in nvif_mmu_ctor()
89 mmu->heap[i].size = args.size; in nvif_mmu_ctor()
109 mmu->type[i].heap = args.heap; in nvif_mmu_ctor()
/linux/lib/zlib_deflate/
H A Ddeftree.c298 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()
332 if (smaller(tree, v, s->heap[j], s->depth)) break; in pqdownheap()
335 s->heap[k] = s->heap[j]; k = j; in pqdownheap()
340 s->heap[k] = v; in pqdownheap()
376 tree[s->heap[s->heap_max]].Len = 0; /* root of the heap */ in gen_bitlen()
379 n = s->heap[h]; in gen_bitlen()
420 m = s->heap[--h]; in gen_bitlen()
[all …]
/linux/drivers/dma-buf/heaps/
H A Dcma_heap.c47 struct dma_heap *heap; member
52 struct cma_heap *heap; member
267 struct cma_heap *cma_heap = buffer->heap; in cma_heap_dma_buf_release()
295 static struct dma_buf *cma_heap_allocate(struct dma_heap *heap, in cma_heap_allocate() argument
300 struct cma_heap *cma_heap = dma_heap_get_drvdata(heap); in cma_heap_allocate()
359 buffer->heap = cma_heap; in cma_heap_allocate()
363 exp_info.exp_name = dma_heap_get_name(heap); in cma_heap_allocate()
403 cma_heap->heap = dma_heap_add(&exp_info); in __add_cma_heap()
404 if (IS_ERR(cma_heap->heap)) { in __add_cma_heap()
405 int ret = PTR_ERR(cma_heap->heap); in __add_cma_heap()
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/
H A Dtu102.c239 meta->gspFwRsvdStart = gsp->fb.heap.addr; in tu102_gsp_wpr_meta_init()
240 meta->nonWprHeapOffset = gsp->fb.heap.addr; in tu102_gsp_wpr_meta_init()
241 meta->nonWprHeapSize = gsp->fb.heap.size; in tu102_gsp_wpr_meta_init()
243 meta->gspFwHeapOffset = gsp->fb.wpr2.heap.addr; in tu102_gsp_wpr_meta_init()
244 meta->gspFwHeapSize = gsp->fb.wpr2.heap.size; in tu102_gsp_wpr_meta_init()
331 gsp->fb.wpr2.heap.size = tu102_gsp_wpr_heap_size(gsp); in tu102_gsp_oneinit()
333 gsp->fb.wpr2.heap.addr = ALIGN_DOWN(gsp->fb.wpr2.elf.addr - gsp->fb.wpr2.heap.size, 0x100000); in tu102_gsp_oneinit()
334 gsp->fb.wpr2.heap.size = ALIGN_DOWN(gsp->fb.wpr2.elf.addr - gsp->fb.wpr2.heap.addr, 0x100000); in tu102_gsp_oneinit()
336 gsp->fb.wpr2.addr = ALIGN_DOWN(gsp->fb.wpr2.heap.addr - sizeof(GspFwWprMeta), 0x100000); in tu102_gsp_oneinit()
339 gsp->fb.heap.size = 0x100000; in tu102_gsp_oneinit()
[all …]
/linux/tools/perf/util/
H A Dpowerpc-vpadtl.c26 struct auxtrace_heap heap; member
380 if (!vpa->heap.heap_cnt) in powerpc_vpadtl_process_queues()
383 if (vpa->heap.heap_array[0].ordinal >= timestamp) in powerpc_vpadtl_process_queues()
386 queue_nr = vpa->heap.heap_array[0].queue_nr; in powerpc_vpadtl_process_queues()
390 auxtrace_heap__pop(&vpa->heap); in powerpc_vpadtl_process_queues()
392 if (vpa->heap.heap_cnt) { in powerpc_vpadtl_process_queues()
393 ts = vpa->heap.heap_array[0].ordinal + 1; in powerpc_vpadtl_process_queues()
402 auxtrace_heap__add(&vpa->heap, queue_nr, ts); in powerpc_vpadtl_process_queues()
407 ret = auxtrace_heap__add(&vpa->heap, queue_nr, ts); in powerpc_vpadtl_process_queues()
477 ret = auxtrace_heap__add(&vpa->heap, queue_nr, vpaq->timestamp); in powerpc_vpadtl__setup_queue()
[all …]
H A Ds390-cpumsf.c171 struct auxtrace_heap heap; member
819 return auxtrace_heap__add(&sf->heap, queue_nr, ts); in s390_cpumsf_setup_queue()
855 if (!sf->heap.heap_cnt) in s390_cpumsf_process_queues()
858 if (sf->heap.heap_array[0].ordinal >= timestamp) in s390_cpumsf_process_queues()
861 queue_nr = sf->heap.heap_array[0].queue_nr; in s390_cpumsf_process_queues()
865 auxtrace_heap__pop(&sf->heap); in s390_cpumsf_process_queues()
866 if (sf->heap.heap_cnt) { in s390_cpumsf_process_queues()
867 ts = sf->heap.heap_array[0].ordinal + 1; in s390_cpumsf_process_queues()
876 auxtrace_heap__add(&sf->heap, queue_nr, ts); in s390_cpumsf_process_queues()
880 ret = auxtrace_heap__add(&sf->heap, queue_nr, ts); in s390_cpumsf_process_queues()
[all …]
/linux/drivers/md/bcache/
H A Dutil.h39 #define init_heap(heap, _size, gfp) \ argument
42 (heap)->used = 0; \
43 (heap)->size = (_size); \
44 _bytes = (heap)->size * sizeof(*(heap)->data); \
45 (heap)->data = kvmalloc(_bytes, (gfp) & GFP_KERNEL); \
46 (heap)->data; \
49 #define free_heap(heap) \ argument
51 kvfree((heap)->data); \
52 (heap)->data = NULL; \
H A Dalloc.c178 ca->heap.used = 0; in invalidate_buckets_lru()
184 if (!heap_full(&ca->heap)) in invalidate_buckets_lru()
185 heap_add(&ca->heap, b, bucket_max_cmp); in invalidate_buckets_lru()
186 else if (bucket_max_cmp(b, heap_peek(&ca->heap))) { in invalidate_buckets_lru()
187 ca->heap.data[0] = b; in invalidate_buckets_lru()
188 heap_sift(&ca->heap, 0, bucket_max_cmp); in invalidate_buckets_lru()
192 for (i = ca->heap.used / 2 - 1; i >= 0; --i) in invalidate_buckets_lru()
193 heap_sift(&ca->heap, i, bucket_min_cmp); in invalidate_buckets_lru()
196 if (!heap_pop(&ca->heap, b, bucket_min_cmp)) { in invalidate_buckets_lru()
/linux/drivers/accel/amdxdna/
H A Daie2_ctx.c60 struct amdxdna_gem_obj *heap = hwctx->priv->heap; in aie2_hwctx_restart() local
70 heap->mem.userptr, heap->mem.size); in aie2_hwctx_restart()
559 struct amdxdna_gem_obj *heap; in aie2_hwctx_init() local
568 heap = client->dev_heap; in aie2_hwctx_init()
569 if (!heap) { in aie2_hwctx_init()
575 drm_gem_object_get(to_gobj(heap)); in aie2_hwctx_init()
577 priv->heap = heap; in aie2_hwctx_init()
580 ret = amdxdna_gem_pin(heap); in aie2_hwctx_init()
643 heap->mem.userptr, heap->mem.size); in aie2_hwctx_init()
678 amdxdna_gem_unpin(heap); in aie2_hwctx_init()
[all …]
H A Damdxdna_gem.c34 struct amdxdna_gem_obj *heap; in amdxdna_gem_heap_alloc() local
41 heap = client->dev_heap; in amdxdna_gem_heap_alloc()
42 if (!heap) { in amdxdna_gem_heap_alloc()
47 if (heap->mem.userptr == AMDXDNA_INVALID_ADDR) { in amdxdna_gem_heap_alloc()
53 if (mem->size == 0 || mem->size > heap->mem.size) { in amdxdna_gem_heap_alloc()
55 mem->size, heap->mem.size); in amdxdna_gem_heap_alloc()
61 ret = drm_mm_insert_node_generic(&heap->mm, &abo->mm_node, in amdxdna_gem_heap_alloc()
70 offset = mem->dev_addr - heap->mem.dev_addr; in amdxdna_gem_heap_alloc()
71 mem->userptr = heap->mem.userptr + offset; in amdxdna_gem_heap_alloc()
72 mem->kva = heap->mem.kva + offset; in amdxdna_gem_heap_alloc()
[all …]
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/instmem/
H A Dnv40.c32 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()
H A Dnv04.c32 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()
/linux/arch/x86/boot/compressed/
H A Dmisc.c410 memptr heap = (memptr)boot_heap; in extract_kernel() local
458 free_mem_ptr = heap; /* Heap */ in extract_kernel()
459 free_mem_end_ptr = heap + BOOT_HEAP_SIZE; in extract_kernel()
501 if (heap > 0x3fffffffffffUL) in extract_kernel()
506 if (heap > ((-__PAGE_OFFSET-(128<<20)-1) & 0x7fffffff)) in extract_kernel()
/linux/arch/mips/boot/compressed/
H A Dhead.S32 PTR_LA a0, (.heap) /* heap address */
51 .comm .heap,BOOT_HEAP_SIZE,4

1234