Merge tag 'dmaengine-6.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul...
[linux-block.git] / Documentation / admin-guide / mm / cma_debugfs.rst
CommitLineData
01c0aa79
MCC
1=====================
2CMA Debugfs Interface
3=====================
4
17e0db82
SL
5The CMA debugfs interface is useful to retrieve basic information out of the
6different CMA areas and to test allocation/release in each of the areas.
7
9a79443d
CTK
8Each CMA area represents a directory under <debugfs>/cma/, represented by
9its CMA name like below:
17e0db82 10
9a79443d 11 <debugfs>/cma/<cma_name>
17e0db82
SL
12
13The structure of the files created under that directory is as follows:
14
15 - [RO] base_pfn: The base PFN (Page Frame Number) of the zone.
16 - [RO] count: Amount of memory in the CMA area.
17 - [RO] order_per_bit: Order of pages represented by one bit.
18 - [RO] bitmap: The bitmap of page states in the zone.
01c0aa79 19 - [WO] alloc: Allocate N pages from that CMA area. For example::
17e0db82 20
9a79443d 21 echo 5 > <debugfs>/cma/<cma_name>/alloc
17e0db82 22
9a79443d 23would try to allocate 5 pages from the 'cma_name' area.
17e0db82
SL
24
25 - [WO] free: Free N pages from that CMA area, similar to the above.