函数逻辑报告 |
Source Code:mm\filemap.c |
Create Date:2022-07-27 15:24:07 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:__add_to_page_cache_locked
函数原型:static int __add_to_page_cache_locked(struct page *page, struct address_space *mapping, unsigned long offset, gfp_t gfp_mask, void **shadowp)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
struct page * | page | |
struct address_space * | mapping | |
unsigned long | offset | |
gfp_t | gfp_mask | |
void ** | shadowp |
861 | VM_BUG_ON_PAGE(!PageLocked(page), page) |
862 | VM_BUG_ON_PAGE(PageSwapBacked(page), page) |
863 | mapping_set_update( & xas, mapping) |
865 | 如果非huge则 |
876 | 循环 |
877 | xas_lock_irq( & xas) |
882 | 如果xas_error() - Return an errno stored in the xa_state.*@xas: XArray operation state.* Return: 0 if no error has been noted. A negative errno if one has.则转到:unlock |
886 | nrexceptional自减 |
890 | nrpages自加 |
893 | 如果非huge则__inc_node_page_state(page, NR_FILE_PAGES) |
895 | unlock : |
896 | xas_unlock_irq( & xas) |
899 | 如果xas_error() - Return an errno stored in the xa_state.*@xas: XArray operation state.* Return: 0 if no error has been noted. A negative errno if one has.则转到:error |
902 | 如果非huge则mem_cgroup_commit_charge(page, memcg, TSC's on different sockets may be reset asynchronously.* This may cause the TSC ADJUST value on socket 0 to be NOT 0., false) |
905 | 返回:0 |
906 | error : |
907 | See page-flags.h for PAGE_MAPPING_FLAGS = NULL |
909 | 如果非huge则mem_cgroup_cancel_charge(page, memcg, false) |
名称 | 描述 |
---|---|
add_to_page_cache_locked | add_to_page_cache_locked - add a locked page to the pagecache*@page: page to add*@mapping: the page's address_space*@offset: page index*@gfp_mask: page allocation mode* This function is used to add a page to the pagecache. It must be locked. |
add_to_page_cache_lru |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |