随笔分类 - fs
摘要:page cache 往bdi_writeback的b_dirty链表上插入node(inode.i_io_list) __set_page_dirty_nobuffers()里调用__mark_inode_dirty(I_DIRTY_PAGES),这个函数里将此inode的i_state或上I_D
阅读全文
摘要:VFS四大struct:file、dentry、inode、super_block dentry dentry有什么作用?dentry保存了目录/文件到inode的映射,在open一个文件时,如果路径上的某个目录或者最后的文件没有对应的dentry,则会为其建立dentry并插入dentry has
阅读全文
摘要:open系统调用flow之do_last() 本文章来分析下open file系统调用最后一个主要的函数do_last() open系统调用来到do_last()时,主要看其nd参数,这个结构体里的path、last成员,此时的path表示open file完整路径最低一级路径,last表示open
阅读全文
摘要:vfs open系统调用flow之link_path_walk() do_filp_open()里将pathname保存到nameidata里,pathname是open file的完整路径名,调用path_openat,此时是flags是带了LOOKUP_RCU flag的 struct file
阅读全文
摘要:vfs open系统调用flow之具体文件系统lookup(ext4 fs lookup) ext4_lookup static struct dentry *ext4_lookup(struct inode *dir, struct dentry *dentry, unsigned int fla
阅读全文
摘要:vfs open系统调用flow之overall 最近在看vfs open系统调用的flow,这个flow也是比较的复杂了,涉及到open file path的解析、四大struct(file、dentry、inode、super_block)。 而且open系统调用会建立很多关系,比如如果某个文件
阅读全文
摘要:ext4 fs 关于ext4文件系统概述 https://www.cnblogs.com/eflypro/p/14075188.html
阅读全文
摘要:sdcardfs sdcardfs_read() call flow [ 70.421020] CPU: 0 PID: 4007 Comm: Binder:2841_2 Tainted: P O 4.19.116+ #21 [ 70.429301] Hardware name: xxx (DT) [
阅读全文
摘要:ext4 mount options fs/ext4/super.c static const struct mount_opts { int token; int mount_opt; int flags; } ext4_mount_opts[] = { {Opt_minix_df, EXT4_M
阅读全文