Function report |
Source Code:fs\fs-writeback.c |
Create Date:2022-07-28 20:10:49 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:Move expired (dirtied before work->older_than_this) dirty inodes from*@delaying_queue to @dispatch_queue.
Proto:static int move_expired_inodes(struct list_head *delaying_queue, struct list_head *dispatch_queue, int flags, struct wb_writeback_work *work)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct list_head * | delaying_queue | |
| struct list_head * | dispatch_queue | |
| int | flags | |
| struct wb_writeback_work * | work |
| 1231 | unsigned long * older_than_this = NULL |
| 1235 | struct super_block * sb = NULL |
| 1237 | do_sb_sort = 0 |
| 1238 | moved = 0 |
| 1240 | If (flags & EXPIRE_DIRTY_ATIME) == 0 Then older_than_this = older_than_this |
| 1242 | Else if Not sync(2) WB_SYNC_ALL writeback Then |
| 1244 | older_than_this = expire_time |
| 1248 | If older_than_this && inode_dirtied_after(inode, * older_than_this) Then Break |
| 1252 | moved++ |
| 1253 | If flags & EXPIRE_DIRTY_ATIME Then Atomically set a bit in memory |
| 1255 | If sb_is_blkdev_sb(i_sb) Then Continue |
| 1257 | If sb && sb != i_sb Then do_sb_sort = 1 |
| 1263 | If Not do_sb_sort Then |
| 1265 | Go to out |
| 1277 | out : |
| 1278 | Return moved |
| Name | Describe |
|---|---|
| queue_io | Queue all expired dirty inodes for io, eldest first.* Before* newly dirtied b_dirty b_io b_more_io* =============> gf edc BA* After* newly dirtied b_dirty b_io b_more_io* =============> g fBAedc* |* +--> dequeue for IO |
| Source code conversion tool public plug-in interface | X |
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |