Lines Matching +full:in +full:- +full:functions
4 There are a number of memory-allocation subsystems in the kernel, each
6 implement a new allocator for a specific range of special-purpose memory;
10 tested allocators. Back in 2005, Jes Sorensen lifted one of those
20 .. kernel-doc:: lib/genalloc.c
21 :functions: gen_pool_create
23 .. kernel-doc:: lib/genalloc.c
24 :functions: devm_gen_pool_create
27 allocations is set with min_alloc_order; it is a log-base-2 number like
31 required to track the memory in the pool. The nid parameter specifies
33 structures; it can be -1 if the caller doesn't care.
41 .. kernel-doc:: lib/genalloc.c
42 :functions: gen_pool_destroy
48 A freshly created pool has no memory to allocate. It is fairly useless in
52 .. kernel-doc:: include/linux/genalloc.h
53 :functions: gen_pool_add
55 .. kernel-doc:: lib/genalloc.c
56 :functions: gen_pool_add_owner
59 starting at addr (in the kernel's virtual address space) into the given
65 The functions for allocating memory from the pool (and putting it back)
68 .. kernel-doc:: include/linux/genalloc.h
69 :functions: gen_pool_alloc
71 .. kernel-doc:: lib/genalloc.c
72 :functions: gen_pool_dma_alloc
74 .. kernel-doc:: lib/genalloc.c
75 :functions: gen_pool_free_owner
80 address in the space pointed to by dma. This will only work if the memory
87 how the allocation functions choose which specific piece of memory to
88 return. If that sort of control is needed, the following functions will be
91 .. kernel-doc:: lib/genalloc.c
92 :functions: gen_pool_alloc_algo_owner
94 .. kernel-doc:: lib/genalloc.c
95 :functions: gen_pool_set_algo
101 naturally, write a special-purpose algorithm, but there is a fair set
104 - gen_pool_first_fit is a simple first-fit allocator; this is the default
107 - gen_pool_first_fit_align forces the allocation to have a specific
108 alignment (passed via data in a genpool_data_align structure).
110 - gen_pool_first_fit_order_align aligns the allocation to the order of the
111 size. A 60-byte allocation will thus be 64-byte aligned, for example.
113 - gen_pool_best_fit, as one would expect, is a simple best-fit allocator.
115 - gen_pool_fixed_alloc allocates at a specific offset (passed in a
119 There is a handful of other functions, mostly for purposes like querying
120 the space available in the pool or iterating through chunks of memory.
123 writing of special-purpose memory allocators in the future.
125 .. kernel-doc:: lib/genalloc.c
126 :functions: gen_pool_virt_to_phys
128 .. kernel-doc:: lib/genalloc.c
129 :functions: gen_pool_for_each_chunk
131 .. kernel-doc:: lib/genalloc.c
132 :functions: gen_pool_has_addr
134 .. kernel-doc:: lib/genalloc.c
135 :functions: gen_pool_avail
137 .. kernel-doc:: lib/genalloc.c
138 :functions: gen_pool_size
140 .. kernel-doc:: lib/genalloc.c
141 :functions: gen_pool_get
143 .. kernel-doc:: lib/genalloc.c
144 :functions: of_gen_pool_get