Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\migrate.c Create Date:2022-07-28 15:58:10
Last Modify:2022-05-20 09:53:13 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:Put previously isolated pages back onto the appropriate lists* from where they were once taken off for compaction/migration.* This function shall be used whenever the isolated pageset has been* built from lru, balloon, hugetlbfs page

Proto:void putback_movable_pages(struct list_head *l)

Type:void

Parameter:

TypeParameterName
struct list_head *l
174  If Value for the false possibility is greater at compile time(PageHuge() only returns true for hugetlbfs pages, but not for normal or* transparent huge pages. See the PageTransHuge() documentation for more* details.) Then
175  putback_active_hugepage(page)
176  Continue
178  deletes entry from list
184  If Value for the false possibility is greater at compile time(__PageMovable(page)) Then
185  VM_BUG_ON_PAGE(!PageIsolated(page), page)
186  lock_page may only be called if we have the page's inode pinned.
187  If PageMovable(page) Then It should be called on page which is PG_movable
189  Else __ClearPageIsolated(page)
191  lock_page - unlock a locked page*@page: the page* Unlocks the page and wakes up sleepers in ___wait_on_page_locked().* Also wakes sleepers in wait_on_page_writeback() because the wakeup* mechanism between PageLocked pages and PageWriteback pages is shared.
192  Perform a free_page(), also freeing any swap cache associated with* this page if it is the last user of the page.
193  Else
194  mod_node_page_state(page_pgdat(page), Temporary isolated pages from anon lru + page_is_file_cache - should the page be on a file LRU or anon LRU?*@page: the page to test* Returns 1 if @page is page cache page backed by a regular filesystem,* or 0 if @page is anonymous, tmpfs or otherwise ram or swap backed, - hpage_nr_pages(page))
196  putback_lru_page - put previously isolated page onto appropriate LRU list*@page: page to be put back to appropriate lru list* Add previously isolated @page to appropriate LRU list.* Page may still be unevictable for other reasons.
Caller
NameDescribe
check_and_migrate_cma_pages
migrate_to_nodeMigrate pages from one node to a target node.* Returns error or the number of pages not migrated.
do_mbind
do_move_pages_to_node
soft_offline_huge_page
__soft_offline_page
isolate_migratepages_blocksolate_migratepages_block() - isolate all migrate-able pages within* a single pageblock*@cc: Compaction control structure.*@low_pfn: The first PFN to isolate*@end_pfn: The one-past-the-last PFN to isolate, within same pageblock