函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\truncate.c Create Date:2022-07-27 15:38:26
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:validate_mapping_pages - Invalidate all the unlocked pages of one inode*@mapping: the address_space which holds the pages to invalidate*@start: the offset 'from' which to invalidate*@end: the offset 'to' which to invalidate (inclusive)* This function only

函数原型:unsigned long invalidate_mapping_pages(struct address_space *mapping, unsigned long start, unsigned long end)

返回类型:unsigned long

参数:

类型参数名称
struct address_space *mapping
unsigned longstart
unsigned longend
551  index等于start
553  count等于0
556  pagevec_init( & pvec)
557 index小于等于endpagevec_lookup_entries - gang pagecache lookup*@pvec: Where the resulting entries are placed*@mapping: The address_space to search*@start: The starting entry index*@nr_entries: The maximum number of pages*@indices: The cache indices corresponding to the 循环
560 i小于pagevec_count( & pvec)循环
561  page等于pages[i]
564  index等于indices[i]
565  如果index大于end退出
574  如果非Return true if the page was successfully locked则继续下一循环
617  count加等于ret
619  pagevec_remove_exceptionals - pagevec exceptionals pruning*@pvec: The pagevec to prune* pagevec_lookup_entries() fills both pages and exceptional radix* tree entries into the pagevec
620  pagevec_release( & pvec)
621  cond_resched()
622  index自加
624  返回:count
调用者
名称描述
generic_fadvisePOSIX_FADV_WILLNEED could set PG_Referenced, and POSIX_FADV_NOREUSE could* deactivate the pages and clear PG_Referenced.
invalidate_bdevInvalidate clean unused buffers and pagecache.
drop_pagecache_sb
__generic_file_write_iter__generic_file_write_iter - write data to a file*@iocb: IO state structure (file, offset, etc.)*@from: iov_iter with data to write* This function does all the work needed for actually writing data to a* file
invalidate_remote_inode
inode_lru_isolateIsolate the inode from the LRU in preparation for freeing it