cephfs kernel client针对inode的相关操作
针对文件的inode的操作体现在数据结构struct inode_operations中,具体内容如下: const struct inode_operations ceph_file_iops = { .permission = ceph_permission, .setattr = ceph_setattr, .getattr = ceph_getattr, .setxattr = generic_setxattr, .getxattr = generic_getxattr, .listxattr = ceph_listxattr, .removexattr = generic_removexattr, .get_acl = ceph_get_acl, .set_acl = ceph_set_acl, }; ceph_permission(struct inode *inode, int mask) 检查inode是否有mask指定的访问权限 |__调用ceph_do_getattr()函数从本地缓存或mds集群中得到CEPH_CAP_AUTH_SHARED对应的权限 |__调用generic_permission()函数做常规的权限检查 ceph_setattr(struct dentry *dentry, struct iattr *attr) 设置文件属性时调用该函数 |