Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

Name:hugetlb_unreserve_pages

Proto:long hugetlb_unreserve_pages(struct inode *inode, long start, long end, long freed)

Type:long

Parameter:

TypeParameterName
struct inode *inode
longstart
longend
longfreed
4661  h = hstate_inode(inode)
4662  resv_map = inode_resv_map(inode)
4663  chg = 0
4664  spool = subpool_inode(inode)
4671  If resv_map Then
4672  chg = Delete the specified range [f, t) from the reserve map. If the* t parameter is LONG_MAX, this indicates that ALL regions after f* should be deleted. Locate the regions which intersect [f, t)* and either trim, delete or split the existing regions.
4678  If chg < 0 Then Return chg
4682  spin_lock( & _blocks, i_bytes, maybe i_size )
4683  i_blocks -= blocks_per_huge_page(h) * freed
4684  spin_unlock( & _blocks, i_bytes, maybe i_size )
4690  gbl_reserve = Subpool accounting for freeing and unreserving pages.* Return the number of global page reservations that must be dropped.* The return value may only be different than the passed value (delta)* in the case where a subpool minimum size must be maintained.
4691  Forward declaration
4693  Return 0