| 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 |