Linux源码笔记 - mount
(一)在Linux的VFS上,各种文件系统对mount操作的注册
do_mount
=> do_new_mount
==> vfs_kern_mount
===> mount_fs
各主流文件系统注册的回调函数举例:
file_system_type->mount
====> aio_mount
====> ext2_mount
====> ext3_mount
====> ext4_mount
====> ntfs_mount
====> sysfs_mount
====> cgroup_mount
====> cifs_do_mount
====> nfs_fs_mount
====> nfs4_remote_mount
====> ceph_mount
====> lustre_mount
(二)NFSv3协议,对mount的实现
nfs_fs_mount
=> nfs_subversion->rpc_ops->try_mount
==> nfs_try_mount
===> nfs_try_mount_request
====> nfs_request_mount
=====> nfs_mount
======> rpc_create
======> rpc_call_sync
=======> rpc_run_task
========> rpc_execute
==========> _rpc_execute
===========> do_action

(三)NFSv4协议,对mount的实现
nfs4_remote_mount
=> nfs4_create_server
==> nfs4_init_server
===> nfs4_set_client
===> nfs_init_server_rpcclient
==> nfs4_server_common_setup
===> nfs4_init_session
===> nfs4_get_rootfh
===> nfs_probe_fsinfo
=> nfs_fs_mount_common
==> nfs_get_root
(四)ceph_mount
ceph_mount
==》 ceph_real_mount
===》 open_root_dentry
====》ceph_mdsc_create_request
====》ceph_mdsc_do_request
====》ceph_init_dentry
====》ceph_mdsc_put_request
浙公网安备 33010602011771号