Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\page_alloc.c Create Date:2022-07-28 15:03:47
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:__free_pages_core

Proto:void __free_pages_core(struct page *page, unsigned int order)

Type:void

Parameter:

TypeParameterName
struct page *page
unsigned intorder
1432  nr_pages = 1 << order
1433  p = page
1436  3dnow prefetch to get an exclusive cache line.* Useful for spinlocks to avoid one state transition in the* cache coherency protocol:
1437  When loop < nr_pages - 1 cycle
1438  3dnow prefetch to get an exclusive cache line.* Useful for spinlocks to avoid one state transition in the* cache coherency protocol:
1439  __ClearPageReserved(p)
1440  set_page_count(p, 0)
1442  __ClearPageReserved(p)
1443  set_page_count(p, 0)
1445  atomic_long_add(nr_pages, & * spanned_pages is the total pages spanned by the zone, including * holes, which is calculated as: * spanned_pages = zone_end_pfn - zone_start_pfn; * present_pages is physical pages existing within the zone, which * is calculated as: * present_pages = span)
1446  Turn a non-refcounted page (->_refcount == 0) into refcounted with* a count of one.
1447  __free_pages(page, order)
Caller
NameDescribe
memblock_free_pages