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 |