函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:fs\iomap\buffered-io.c Create Date:2022-07-29 11:07:18
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:iomap_migrate_page

函数原型:int iomap_migrate_page(struct address_space *mapping, struct page *newpage, struct page *page, enum migrate_mode mode)

返回类型:int

参数:

类型参数名称
struct address_space *mapping
struct page *newpage
struct page *page
enum migrate_modemode
544  ret等于Replace the page in the mapping.* The number of remaining references must be:* 1 for anonymous pages without a mapping* 2 for pages with a mapping* 3 for pages with a mapping and PagePrivate/PagePrivate2 set.
545  如果ret不等于Return values from addresss_space_operations.migratepage():* - negative errno on page migration failure;* - zero on page migration success;则返回:ret
548  如果页面私有占用
549  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
550  get_page(newpage)
551  set_page_private(newpage, page_private(page))
552  set_page_private(page, 0)
553  Perform a free_page(), also freeing any swap cache associated with* this page if it is the last user of the page.
554  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
557  如果mode不等于MIGRATE_SYNC_NO_COPYmigrate_page_copy(newpage, page)
559  否则Copy the page to its new location
561  返回:Return values from addresss_space_operations.migratepage():* - negative errno on page migration failure;* - zero on page migration success;