Function report |
Source Code:fs\inode.c |
Create Date:2022-07-28 20:07:57 |
| Last Modify:2020-03-18 19:19:59 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:Isolate the inode from the LRU in preparation for freeing it
Proto:static enum lru_status inode_lru_isolate(struct list_head *item, struct list_lru_one *lru, spinlock_t *lru_lock, void *arg)
Type:enum lru_status
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct list_head * | item | |
| struct list_lru_one * | lru | |
| spinlock_t * | lru_lock | |
| void * | arg |
| 741 | If Not spin_trylock( & _blocks, i_bytes, maybe i_size ) Then Return m cannot be locked, skip |
| 748 | If atomic_read( & i_count) || Misc & ~Marks the inode as recently references on the LRU list Then |
| 750 | list_lru_isolate(lru, & de LRU list ) |
| 752 | this_cpu_dec(nr_unused) |
| 753 | Return m removed from list |
| 757 | If Misc & Marks the inode as recently references on the LRU list Then |
| 760 | Return m referenced, give another pass |
| 763 | If inode_has_buffers(inode) || nrpages Then |
| 766 | spin_unlock(lru_lock) |
| 767 | If remove_inode_buffers(inode) Then |
| 770 | If current_is_kswapd() Then __count_vm_events(KSWAPD_INODESTEAL, reap) |
| 772 | Else __count_vm_events(PGINODESTEAL, reap) |
| 774 | If reclaim_state Then reclaimed_slab += reap |
| 777 | put an inode |
| 783 | Misc |= Set when inode is about to be freed but still has dirty pages or buffers attached or the inode itself is still dirty |
| 784 | list_lru_isolate_move(lru, & de LRU list , freeable) |
| 787 | this_cpu_dec(nr_unused) |
| 788 | Return m removed from list |
| 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 |