Home
last modified time | relevance | path

Searched refs:cma (Results 1 – 25 of 91) sorted by relevance

1234

/linux/mm/
A Dcma.c38 phys_addr_t cma_get_base(const struct cma *cma) in cma_get_base() argument
43 unsigned long cma_get_size(const struct cma *cma) in cma_get_size() argument
48 const char *cma_get_name(const struct cma *cma) in cma_get_name() argument
84 bitmap_no = (pfn - cma->base_pfn) >> cma->order_per_bit; in cma_clear_bitmap()
92 static void __init cma_activate_area(struct cma *cma) in cma_activate_area() argument
174 struct cma *cma; in cma_init_reserved_mem() local
381 static void cma_debug_show_areas(struct cma *cma) in cma_debug_show_areas() argument
416 const char *name = cma ? cma->name : NULL; in __cma_alloc()
420 if (!cma || !cma->count || !cma->bitmap) in __cma_alloc()
424 (void *)cma, cma->name, count, align); in __cma_alloc()
[all …]
A Dcma_debug.c36 struct cma *cma = data; in cma_used_get() local
41 used = bitmap_weight(cma->bitmap, (int)cma_bitmap_maxno(cma)); in cma_used_get()
51 struct cma *cma = data; in cma_maxchunk_get() local
71 static void cma_add_to_cma_mem_list(struct cma *cma, struct cma_mem *mem) in cma_add_to_cma_mem_list() argument
78 static struct cma_mem *cma_get_entry_from_list(struct cma *cma) in cma_get_entry_from_list() argument
92 static int cma_free_mem(struct cma *cma, int count) in cma_free_mem() argument
125 struct cma *cma = data; in cma_free_write() local
131 static int cma_alloc_mem(struct cma *cma, int count) in cma_alloc_mem() argument
157 struct cma *cma = data; in cma_alloc_write() local
179 cma->dfs_bitmap.array = (u32 *)cma->bitmap; in cma_debugfs_add_one()
[all …]
A Dcma_sysfs.c17 void cma_sysfs_account_success_pages(struct cma *cma, unsigned long nr_pages) in cma_sysfs_account_success_pages() argument
22 void cma_sysfs_account_fail_pages(struct cma *cma, unsigned long nr_pages) in cma_sysfs_account_fail_pages() argument
27 void cma_sysfs_account_release_pages(struct cma *cma, unsigned long nr_pages) in cma_sysfs_account_release_pages() argument
40 struct cma *cma = cma_from_kobj(kobj); in alloc_pages_success_show() local
50 struct cma *cma = cma_from_kobj(kobj); in alloc_pages_fail_show() local
59 struct cma *cma = cma_from_kobj(kobj); in release_pages_success_show() local
67 struct cma *cma = cma_from_kobj(kobj); in cma_kobj_release() local
71 cma->cma_kobj = NULL; in cma_kobj_release()
80 ATTRIBUTE_GROUPS(cma);
92 struct cma *cma; in cma_sysfs_init() local
[all …]
A Dcma.h10 struct cma *cma; member
13 struct cma { struct
38 extern struct cma cma_areas[MAX_CMA_AREAS]; argument
41 static inline unsigned long cma_bitmap_maxno(struct cma *cma) in cma_bitmap_maxno() argument
43 return cma->count >> cma->order_per_bit; in cma_bitmap_maxno()
47 void cma_sysfs_account_success_pages(struct cma *cma, unsigned long nr_pages);
48 void cma_sysfs_account_fail_pages(struct cma *cma, unsigned long nr_pages);
49 void cma_sysfs_account_release_pages(struct cma *cma, unsigned long nr_pages);
51 static inline void cma_sysfs_account_success_pages(struct cma *cma, in cma_sysfs_account_success_pages() argument
53 static inline void cma_sysfs_account_fail_pages(struct cma *cma, in cma_sysfs_account_fail_pages() argument
[all …]
/linux/include/linux/
A Dcma.h23 struct cma;
26 extern phys_addr_t cma_get_base(const struct cma *cma);
27 extern unsigned long cma_get_size(const struct cma *cma);
28 extern const char *cma_get_name(const struct cma *cma);
46 struct cma **res_cma);
52 extern int cma_for_each_area(int (*it)(struct cma *cma, void *data), void *data);
54 extern void cma_reserve_pages_on_error(struct cma *cma);
57 struct folio *cma_alloc_folio(struct cma *cma, int order, gfp_t gfp);
58 bool cma_free_folio(struct cma *cma, const struct folio *folio);
60 static inline struct folio *cma_alloc_folio(struct cma *cma, int order, gfp_t gfp) in cma_alloc_folio() argument
[all …]
A Ddma-map-ops.h13 struct cma;
100 extern struct cma *dma_contiguous_default_area;
102 static inline struct cma *dev_get_cma_area(struct device *dev) in dev_get_cma_area()
111 phys_addr_t limit, struct cma **res_cma, bool fixed);
122 static inline struct cma *dev_get_cma_area(struct device *dev) in dev_get_cma_area()
130 phys_addr_t base, phys_addr_t limit, struct cma **res_cma, in dma_contiguous_reserve_area()
/linux/kernel/dma/
A Dcontiguous.c55 struct cma *dma_contiguous_default_area;
166 struct cma **cma; in dma_numa_cma_reserve() local
179 0, false, name, cma, nid); in dma_numa_cma_reserve()
190 name, cma, nid); in dma_numa_cma_reserve()
329 static struct page *cma_alloc_aligned(struct cma *cma, size_t size, gfp_t gfp) in cma_alloc_aligned() argument
367 struct cma *cma = dma_contiguous_pernuma_area[nid]; in dma_alloc_contiguous() local
370 if (cma) { in dma_alloc_contiguous()
377 if (cma) { in dma_alloc_contiguous()
461 struct cma *cma; in rmem_cma_setup() local
488 dma_contiguous_default_area = cma; in rmem_cma_setup()
[all …]
A Dpool.c60 struct cma *cma; in cma_in_zone() local
62 cma = dev_get_cma_area(NULL); in cma_in_zone()
63 if (!cma) in cma_in_zone()
66 size = cma_get_size(cma); in cma_in_zone()
71 end = cma_get_base(cma) + size - 1; in cma_in_zone()
A DKconfig168 You can disable CMA by specifying "cma=0" on the kernel's command
197 default, but it can be enabled by passing cma=size[MG] to the kernel.
209 enabled by passing cma=size[MG] to the kernel.
/linux/Documentation/ABI/testing/
A Dsysfs-kernel-mm-cma1 What: /sys/kernel/mm/cma/
5 /sys/kernel/mm/cma/ contains a subdirectory for each CMA
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/dma-buf/heaps/
A Dcma_heap.c28 struct cma *cma; member
258 cma_release(cma_heap->cma, buffer->cma_pages, buffer->pagecount); in cma_heap_dma_buf_release()
302 cma_pages = cma_alloc(cma_heap->cma, pagecount, align, false); in cma_heap_allocate()
358 cma_release(cma_heap->cma, cma_pages, pagecount); in cma_heap_allocate()
369 static int __add_cma_heap(struct cma *cma, void *data) in __add_cma_heap() argument
377 cma_heap->cma = cma; in __add_cma_heap()
379 exp_info.name = cma_get_name(cma); in __add_cma_heap()
396 struct cma *default_cma = dev_get_cma_area(NULL); in add_default_cma_heap()
/linux/Documentation/admin-guide/mm/
A Dcma_debugfs.rst8 Each CMA area represents a directory under <debugfs>/cma/, represented by
11 <debugfs>/cma/<cma_name>
21 echo 5 > <debugfs>/cma/<cma_name>/alloc
/linux/arch/s390/mm/
A Dinit.c230 static int s390_cma_check_range(struct cma *cma, void *data) in s390_cma_check_range() argument
236 start = cma_get_base(cma); in s390_cma_check_range()
237 end = start + cma_get_size(cma); in s390_cma_check_range()
/linux/arch/xtensa/boot/dts/
A Dkc705.dts22 linux,cma {
28 linux,cma-default;
/linux/arch/loongarch/boot/dts/
A Dloongson-2k0500-ref.dts35 linux,cma {
39 linux,cma-default;
A Dloongson-2k2000-ref.dts33 linux,cma {
37 linux,cma-default;
A Dloongson-2k1000-ref.dts34 linux,cma {
38 linux,cma-default;
/linux/arch/arm64/boot/dts/freescale/
A Dimx93-phycore-som.dtsi24 linux,cma {
29 linux,cma-default;
A Dtqma8xx.dtsi37 linux,cma {
42 linux,cma-default;
A Dimx8ulp-evk.dts28 linux,cma {
32 linux,cma-default;
/linux/arch/arm64/boot/dts/ti/
A Dk3-am62a-phycore-som.dtsi52 /* global cma region */
53 linux,cma {
58 linux,cma-default;
/linux/arch/arm/boot/dts/nxp/imx/
A Dimx6ul-ccimx6ulsom.dtsi20 linux,cma {
24 linux,cma-default;
/linux/arch/arm64/boot/dts/broadcom/
A Dbcm2712.dtsi180 cma: linux,cma { label
184 linux,cma-default;
/linux/drivers/gpu/drm/nouveau/include/nvkm/subdev/
A Dpci.h23 bool cma; member
/linux/drivers/infiniband/core/
A DMakefile25 rdma_cm-y := cma.o cma_trace.o

Completed in 64 milliseconds

1234