Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

Name:dequeue_huge_page_vma

Proto:static struct page *dequeue_huge_page_vma(struct hstate *h, struct vm_area_struct *vma, unsigned long address, int avoid_reserve, long chg)

Type:struct page

Parameter:

TypeParameterName
struct hstate *h
struct vm_area_struct *vma
unsigned longaddress
intavoid_reserve
longchg
909  If Not Returns true if the VMA has associated reserve pages && free_huge_pages - resv_huge_pages == 0 Then Go to err
914  If avoid_reserve && free_huge_pages - resv_huge_pages == 0 Then Go to err
917  gfp_mask = Movability of hugepages depends on migration support.
918  nid = huge_node(vma, address, gfp_mask, & mpol, & nodemask)
919  page = dequeue_huge_page_nodemask(h, gfp_mask, nid, nodemask)
920  If page && Not avoid_reserve && Returns true if the VMA has associated reserve pages Then
921  Private page markings that may be used by the filesystem that owns the page* for its own purposes.* - PG_private and PG_private_2 cause releasepage() and co to be invoked
922  resv_huge_pages--
925  mpol_cond_put(mpol)
926  Return page
928  err :
929  Return NULL
Caller
NameDescribe
alloc_huge_page