Thank you for your consideration. Okay, I will check ocfs2 out. By the way, is there any possibility to implement this functionality in the vfs layer? I looked at the dcache.c, inode.c, and mm/vmscan.c code and looked at several functions, and as you said, they seem to have way complex logic. The logic I thought was to release the desired dentry, dentry_kill() the negative dentry, and break the inodes of the file that had that dentry. Can you tell me the detailed logic of the dentry and inode caches that I'm curious about? If not, can you give me a reference paper or book? Best regards, Daegyu 2019-10-02 21:46 GMT+09:00, Theodore Y. Ts'o <tytso@xxxxxxx>: > On Wed, Oct 02, 2019 at 05:30:21PM +0900, Daegyu Han wrote: >> Hi linux file system experts, >> >> I'm so sorry that I've asked again the general question about Linux >> file systems. >> >> For example, if there is a file a.txt in the path /foo/ bar, >> what should I do to completely evict(remove) the inode of bar >> directory from memory and read the inode via disk access? > > There is no API to do this from userspace. The only way to do this is > to unmount the entire file system. > > From the kernel, it's *way* more complicated than this. Making a > shared-disk file system requires a lot more changes to the kernel > code. You might want to take a look at ocfs2. This was a file system > that started using the ext3 file system code, and **extensive** > kernel-level code changes were made to make it be a shared-disk file > system. > > - Ted > >