I want to make sure I'm understanding how VFS inodes and file system inodes working together.A file system's inodes are stored on the block device and that is where they live.When an operation is performed on the FS's inodes they must must first be copied into memory as a VFS inode. When this happens VFS also stores that inode temporarily in its inode cache for future use. The VFS inode abstracts away FS specific operations so it can be used by user land applications in a uniform way. How much control do file systems have over what goes in the VFS inode cache? Is this optimized differently by different files systems or does VFS cache inodes however it likes independently of the specific FS?There is also the buffer cache which is completely independent from specific file systems right? Do file systems have any say what goes in the Buffer Cache or is all that decided and optimized by the specific block devices drivers?
How much control do concrete file systems have over the VFS inode cache and the buffer cache?
filesystems;linux kernel;storage;inode;vfs