函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:Find proper writeback list for the inode depending on its current state and* possibly also change of its state while we were doing writeback. Here we* handle things such as livelock prevention or fairness of writeback among* inodes

函数原型:static void requeue_inode(struct inode *inode, struct bdi_writeback *wb, struct writeback_control *wbc)

返回类型:void

参数:

类型参数名称
struct inode *inode
struct bdi_writeback *wb
struct writeback_control *wbc
1380  如果Misc 按位与I_FREEING则返回
1388  如果Misc 按位与I_DIRTYsync_mode恒等于Wait on every mapping ag-and-write to avoid livelock 的值则jiffies of first dirtying 等于jiffies
1392  如果Pages which were not written
1397  Redirty an inode: set its when-it-was dirtied timestamp and move it to the* furthest end of its superblock's dirty-inode list.* Before stamping the inode's ->dirtied_when, we check to see whether it is
1398  返回
1401  如果Returns true if any of the pages in the mapping are marked with the tag.
1409  否则
1419  否则如果Misc 按位与I_DIRTY
1425  Redirty an inode: set its when-it-was dirtied timestamp and move it to the* furthest end of its superblock's dirty-inode list.* Before stamping the inode's ->dirtied_when, we check to see whether it is
1426  否则如果Misc 按位与I_DIRTY_TIME
1427  jiffies of first dirtying 等于jiffies
1428  de_io_list_move_locked - move an inode onto a bdi_writeback IO list*@inode: inode to be moved*@wb: target bdi_writeback*@head: one of @wb->b_{dirty|io|more_io|dirty_time}* Move @inode->i_io_list to @list of @wb and set %WB_has_dirty_io
1429  否则
1431  de_io_list_del_locked - remove an inode from its bdi_writeback IO list*@inode: inode to be removed*@wb: bdi_writeback @inode is being removed from* Remove @inode which may be on one of @wb->b_{dirty|io|more_io} lists and
调用者
名称描述
writeback_sb_inodesWrite a portion of b_io inodes which belong to @sb.* Return the number of pages and/or inodes written.* NOTE! This is called with wb->list_lock held, and will* unlock and relock that for each inode it ends up doing* IO for.