函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\cma.c Create Date:2022-07-27 18:07:24
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:ma_release() - release allocated pages*@cma: Contiguous memory region for which the allocation is performed

函数原型:bool cma_release(struct cma *cma, const struct page *pages, unsigned int count)

返回类型:bool

参数:

类型参数名称
struct cma *cma
const struct page *pages
unsigned intcount
516  如果非cma或非pages则返回:false
519  pr_debug("%s(page %p)\n", __func__, (void * )pages)
521  pfn等于page_to_pfn(pages)
523  如果pfn小于base_pfnpfn大于等于base_pfncount则返回:false
526  VM_BUG_ON(pfn + count > base_pfn + count)
528  free_contig_range(pfn, count)
529  cma_clear_bitmap(cma, pfn, count)
530  trace_cma_release(pfn, pages, count)
532  返回:true
调用者
名称描述
dma_free_contiguousdma_free_contiguous() - release allocated pages*@dev: Pointer to device for which the pages were allocated
cma_free_mem
dma_release_from_contiguousdma_release_from_contiguous() - release allocated pages*@dev: Pointer to device for which the pages were allocated