| Function report | 
| Source Code: fs\dcache.c | Create Date:2022-07-28 20:07:26 | 
| Last Modify:2020-03-18 10:27:32 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:__dentry_kill
Proto:static void __dentry_kill(struct dentry *dentry)
Type:void
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct dentry * | dentry | 
| 553 | bool can_free = true | 
| 554 | If Not linux/include/linux/dcache.h* Dirent cache data structures* (C) Copyright 1997 Thomas Schoebel-Theuer,* with heavy changes by Linus Torvalds(dentry) Then parent = parent directory | 
| 566 | If protected by d_lock & DCACHE_OP_PRUNE Then d_prune(dentry) | 
| 569 | If protected by d_lock & DCACHE_LRU_LIST Then | 
| 570 | If Not ( protected by d_lock & DCACHE_SHRINK_LIST) Then d_lru_del(dentry) | 
| 574 | drop a dentry | 
| 575 | dentry_unlist(dentry, parent) | 
| 576 | If parent Then spin_unlock( & d_lock) | 
| 578 | If Where the name belongs to - NULL is * negative Then Release the dentry's inode, using the filesystem* d_iput() operation if defined. | 
| 580 | Else spin_unlock( & d_lock) | 
| 582 | this_cpu_dec(nr_dentry) | 
| 587 | If protected by d_lock & DCACHE_SHRINK_LIST Then | 
| 589 | can_free = false | 
| 591 | spin_unlock( & d_lock) | 
| 592 | If Value is more likely to compile time(can_free) Then dentry_free(dentry) | 
| 594 | cond_resched() | 
| Name | Describe | 
|---|---|
| dentry_kill | Finish off a dentry we've decided to kill.* Returns dentry requiring refcount drop, or NULL if we're done. | 
| d_prune_aliases | Try to kill dentries associated with this inode.* WARNING: you must own a reference to inode. | 
| shrink_dentry_list | |
| shrink_dcache_parent | prune dcache | 
| 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 |