函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:Check that the whole (or subset of) a pageblock given by the interval of* [start_pfn, end_pfn) is valid and within the same zone, before scanning it* with the migration of free compaction scanner

函数原型:struct page *__pageblock_pfn_to_page(unsigned long start_pfn, unsigned long end_pfn, struct zone *zone)

返回类型:struct page

参数:

类型参数名称
unsigned longstart_pfn
unsigned longend_pfn
struct zone *zone
1522  end_pfn自减
1524  如果非pfn_valid(start_pfn)或非pfn_valid(end_pfn)则返回:NULL
1527  start_page等于Return page for the valid pfn only if the page is online. All pfn* walkers which rely on the fully initialized page->flags and others* should use this rather than pfn_valid && pfn_to_page(start_pfn)
1528  如果非start_page则返回:NULL
1531  如果page_zone(start_page)不等于zone则返回:NULL
1534  end_page等于pfn_to_page(end_pfn)
1537  如果The identification function is mainly used by the buddy allocator for* determining if two pages could be buddies不等于The identification function is mainly used by the buddy allocator for* determining if two pages could be buddies则返回:NULL
1540  返回:start_page
调用者
名称描述
set_zone_contiguous
pageblock_pfn_to_page