ovl_fs
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(c->dentry->d_sb);
static int ovl_copy_up_file(struct ovl_fs *ofs, struct dentry *dentry,
static int ovl_set_size(struct ovl_fs *ofs,
static int ovl_set_timestamps(struct ovl_fs *ofs, struct dentry *upperdentry,
int ovl_set_attr(struct ovl_fs *ofs, struct dentry *upperdentry,
struct ovl_fh *ovl_encode_real_fh(struct ovl_fs *ofs, struct inode *realinode,
static int ovl_copy_acl(struct ovl_fs *ofs, const struct path *path,
struct ovl_fh *ovl_get_origin_fh(struct ovl_fs *ofs, struct dentry *origin)
int ovl_set_origin_fh(struct ovl_fs *ofs, const struct ovl_fh *fh,
static int ovl_set_upper_fh(struct ovl_fs *ofs, struct dentry *upper,
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(c->dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(c->dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(c->dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(c->dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(c->dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(c->dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(old->d_sb);
int ovl_cleanup_and_whiteout(struct ovl_fs *ofs, struct dentry *dir,
struct dentry *ovl_create_real(struct ovl_fs *ofs, struct dentry *parent,
struct dentry *ovl_create_temp(struct ovl_fs *ofs, struct dentry *workdir,
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
static int ovl_cleanup_locked(struct ovl_fs *ofs, struct inode *wdir,
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
static int ovl_set_upper_acl(struct ovl_fs *ofs, struct dentry *upperdentry,
int ovl_cleanup(struct ovl_fs *ofs, struct dentry *workdir,
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
static struct dentry *ovl_start_creating_temp(struct ovl_fs *ofs,
static struct dentry *ovl_whiteout(struct ovl_fs *ofs)
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(inode->i_sb);
static int ovl_dentry_to_fid(struct ovl_fs *ofs, struct inode *inode,
struct ovl_fs *ofs = OVL_FS(inode->i_sb);
struct ovl_fs *ofs = OVL_FS(sb);
struct ovl_fs *ofs = OVL_FS(sb);
struct ovl_fs *ofs = OVL_FS(sb);
struct ovl_fs *ofs = OVL_FS(sb);
struct ovl_fs *ofs = OVL_FS(sb);
struct ovl_fs *ofs = OVL_FS(sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(inode->i_sb);
struct ovl_fs *ofs = OVL_FS(inode->i_sb);
struct ovl_fs *ofs = OVL_FS(inode->i_sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
unsigned int ovl_get_nlink(struct ovl_fs *ofs, struct dentry *lowerdentry,
struct ovl_fs *ofs = OVL_FS(d->sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
static struct ovl_fh *ovl_get_fh(struct ovl_fs *ofs, struct dentry *upperdentry,
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
bool ovl_uuid_match(struct ovl_fs *ofs, const struct super_block *sb,
struct dentry *ovl_decode_real_fh(struct ovl_fs *ofs, struct ovl_fh *fh,
struct ovl_fs *ofs = OVL_FS(d->sb);
struct ovl_fs *ofs = OVL_FS(d->sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
int ovl_check_origin_fh(struct ovl_fs *ofs, struct ovl_fh *fh, bool connected,
static int ovl_check_origin(struct ovl_fs *ofs, struct dentry *upperdentry,
static int ovl_verify_fh(struct ovl_fs *ofs, struct dentry *dentry,
int ovl_verify_set_fh(struct ovl_fs *ofs, struct dentry *dentry,
int ovl_verify_origin_xattr(struct ovl_fs *ofs, struct dentry *dentry,
struct dentry *ovl_index_upper(struct ovl_fs *ofs, struct dentry *index,
int ovl_verify_index(struct ovl_fs *ofs, struct dentry *index)
int ovl_get_index_name(struct ovl_fs *ofs, struct dentry *origin,
struct dentry *ovl_get_index_fh(struct ovl_fs *ofs, struct ovl_fh *fh)
struct dentry *ovl_lookup_index(struct ovl_fs *ofs, struct dentry *upper,
static int ovl_fix_origin(struct ovl_fs *ofs, struct dentry *dentry,
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
static inline const char *ovl_xattr(struct ovl_fs *ofs, enum ovl_xattr ox)
static inline int ovl_do_notify_change(struct ovl_fs *ofs,
static inline int ovl_do_rmdir(struct ovl_fs *ofs,
static inline int ovl_do_unlink(struct ovl_fs *ofs, struct inode *dir,
static inline int ovl_do_link(struct ovl_fs *ofs, struct dentry *old_dentry,
static inline int ovl_do_create(struct ovl_fs *ofs,
static inline struct dentry *ovl_do_mkdir(struct ovl_fs *ofs,
static inline int ovl_do_mknod(struct ovl_fs *ofs,
static inline int ovl_do_symlink(struct ovl_fs *ofs,
static inline ssize_t ovl_getxattr_upper(struct ovl_fs *ofs,
static inline ssize_t ovl_path_getxattr(struct ovl_fs *ofs,
static inline int ovl_do_setxattr(struct ovl_fs *ofs, struct dentry *dentry,
static inline int ovl_setxattr(struct ovl_fs *ofs, struct dentry *dentry,
static inline int ovl_do_removexattr(struct ovl_fs *ofs, struct dentry *dentry,
static inline int ovl_removexattr(struct ovl_fs *ofs, struct dentry *dentry,
static inline int ovl_do_set_acl(struct ovl_fs *ofs, struct dentry *dentry,
static inline int ovl_do_remove_acl(struct ovl_fs *ofs, struct dentry *dentry,
static inline int ovl_do_rename(struct ovl_fs *ofs, struct dentry *olddir,
static inline int ovl_do_whiteout(struct ovl_fs *ofs,
static inline struct file *ovl_do_tmpfile(struct ovl_fs *ofs,
static inline struct dentry *ovl_lookup_upper(struct ovl_fs *ofs,
static inline struct dentry *ovl_lookup_upper_unlocked(struct ovl_fs *ofs,
static inline struct dentry *ovl_start_creating_upper(struct ovl_fs *ofs,
static inline struct dentry *ovl_start_removing_upper(struct ovl_fs *ofs,
void ovl_layer_set_xwhiteouts(struct ovl_fs *ofs,
bool ovl_path_is_whiteout(struct ovl_fs *ofs, const struct path *path);
char ovl_get_dir_xattr_val(struct ovl_fs *ofs, const struct path *path,
bool ovl_path_check_origin_xattr(struct ovl_fs *ofs, const struct path *path);
bool ovl_path_check_xwhiteout_xattr(struct ovl_fs *ofs, const struct path *path);
bool ovl_init_uuid_xattr(struct super_block *sb, struct ovl_fs *ofs,
static inline bool ovl_upper_is_whiteout(struct ovl_fs *ofs,
static inline bool ovl_check_origin_xattr(struct ovl_fs *ofs,
int ovl_check_setxattr(struct ovl_fs *ofs, struct dentry *upperdentry,
int ovl_check_metacopy_xattr(struct ovl_fs *ofs, const struct path *path,
int ovl_set_metacopy_xattr(struct ovl_fs *ofs, struct dentry *d,
char *ovl_get_redirect_xattr(struct ovl_fs *ofs, const struct path *path, int padding);
int ovl_validate_verity(struct ovl_fs *ofs,
int ovl_get_verity_digest(struct ovl_fs *ofs, const struct path *src,
int ovl_sync_status(struct ovl_fs *ofs);
struct ovl_fs *ofs = OVL_FS(sb);
static inline char ovl_get_opaquedir_val(struct ovl_fs *ofs,
static inline bool ovl_redirect_follow(struct ovl_fs *ofs)
static inline bool ovl_redirect_dir(struct ovl_fs *ofs)
static inline bool ovl_origin_uuid(struct ovl_fs *ofs)
static inline bool ovl_has_fsid(struct ovl_fs *ofs)
static inline bool ovl_xino_warn(struct ovl_fs *ofs)
static inline bool ovl_should_sync(struct ovl_fs *ofs)
static inline bool ovl_should_sync_metadata(struct ovl_fs *ofs)
static inline bool ovl_allow_offline_changes(struct ovl_fs *ofs)
static inline bool ovl_same_fs(struct ovl_fs *ofs)
static inline bool ovl_same_dev(struct ovl_fs *ofs)
static inline unsigned int ovl_xino_bits(struct ovl_fs *ofs)
bool ovl_uuid_match(struct ovl_fs *ofs, const struct super_block *sb,
struct dentry *ovl_decode_real_fh(struct ovl_fs *ofs, struct ovl_fh *fh,
int ovl_check_origin_fh(struct ovl_fs *ofs, struct ovl_fh *fh, bool connected,
int ovl_verify_set_fh(struct ovl_fs *ofs, struct dentry *dentry,
int ovl_verify_origin_xattr(struct ovl_fs *ofs, struct dentry *dentry,
struct dentry *ovl_index_upper(struct ovl_fs *ofs, struct dentry *index,
int ovl_verify_index(struct ovl_fs *ofs, struct dentry *index);
int ovl_get_index_name(struct ovl_fs *ofs, struct dentry *origin,
struct dentry *ovl_get_index_fh(struct ovl_fs *ofs, struct ovl_fh *fh);
struct dentry *ovl_lookup_index(struct ovl_fs *ofs, struct dentry *upper,
static inline int ovl_verify_origin_fh(struct ovl_fs *ofs, struct dentry *upper,
static inline int ovl_verify_origin(struct ovl_fs *ofs, struct dentry *upper,
static inline int ovl_verify_upper(struct ovl_fs *ofs, struct dentry *index,
void ovl_cleanup_whiteouts(struct ovl_fs *ofs, struct dentry *upper,
int ovl_workdir_cleanup(struct ovl_fs *ofs, struct dentry *parent,
int ovl_indexdir_cleanup(struct ovl_fs *ofs);
unsigned int ovl_get_nlink(struct ovl_fs *ofs, struct dentry *lowerdentry,
int ovl_cleanup_and_whiteout(struct ovl_fs *ofs, struct dentry *dir,
struct dentry *ovl_create_real(struct ovl_fs *ofs,
int ovl_cleanup(struct ovl_fs *ofs, struct dentry *workdir, struct dentry *dentry);
struct dentry *ovl_create_temp(struct ovl_fs *ofs, struct dentry *workdir,
int ovl_set_attr(struct ovl_fs *ofs, struct dentry *upper, struct kstat *stat);
struct ovl_fh *ovl_encode_real_fh(struct ovl_fs *ofs, struct inode *realinode,
struct ovl_fh *ovl_get_origin_fh(struct ovl_fs *ofs, struct dentry *origin);
int ovl_set_origin_fh(struct ovl_fs *ofs, const struct ovl_fh *fh,
static inline bool ovl_force_readonly(struct ovl_fs *ofs)
const struct xattr_handler * const *ovl_xattr_handlers(struct ovl_fs *ofs);
static inline struct vfsmount *ovl_upper_mnt(struct ovl_fs *ofs)
static inline struct mnt_idmap *ovl_upper_mnt_idmap(struct ovl_fs *ofs)
static inline struct ovl_fs *OVL_FS(struct super_block *sb)
return (struct ovl_fs *)sb->s_fs_info;
static inline unsigned int ovl_numlowerlayer(struct ovl_fs *ofs)
struct ovl_fs *ofs = OVL_FS(sb);
struct ovl_fs *ofs = fc->s_fs_info;
struct ovl_fs *ofs = fc->s_fs_info;
struct ovl_fs *ofs = fc->s_fs_info;
struct ovl_fs *ofs = fc->s_fs_info;
struct ovl_fs *ofs = OVL_FS(sb);
struct ovl_fs *ofs;
ofs = kzalloc_obj(struct ovl_fs);
void ovl_free_fs(struct ovl_fs *ofs)
void ovl_free_fs(struct ovl_fs *ofs);
struct ovl_fs;
void ovl_cleanup_whiteouts(struct ovl_fs *ofs, struct dentry *upper,
static int ovl_workdir_cleanup_recurse(struct ovl_fs *ofs, const struct path *path,
int ovl_workdir_cleanup(struct ovl_fs *ofs, struct dentry *parent,
int ovl_indexdir_cleanup(struct ovl_fs *ofs)
struct ovl_fs *ofs = OVL_FS(rdd->dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(dir->d_sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(dir->d_sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
static int ovl_get_data_fsid(struct ovl_fs *ofs)
static int ovl_get_layers(struct super_block *sb, struct ovl_fs *ofs,
struct ovl_fs *ofs,
static int ovl_check_layer(struct super_block *sb, struct ovl_fs *ofs,
struct ovl_fs *ofs)
struct ovl_fs *ofs = OVL_FS(sb);
struct ovl_fs *ofs = sb->s_fs_info;
struct ovl_fs *ofs = sb->s_fs_info;
struct ovl_fs *ofs = sb->s_fs_info;
struct ovl_fs *ofs = OVL_FS(sb);
struct ovl_fs *ofs = OVL_FS(sb);
struct ovl_fs *ofs = OVL_FS(sb);
static struct dentry *ovl_workdir_create(struct ovl_fs *ofs,
static int ovl_check_namelen(const struct path *path, struct ovl_fs *ofs,
struct ovl_fs *ofs, int *stack_depth)
static int ovl_report_in_use(struct ovl_fs *ofs, const char *name)
static int ovl_get_upper(struct super_block *sb, struct ovl_fs *ofs,
static int ovl_check_rename_whiteout(struct ovl_fs *ofs)
static struct dentry *ovl_lookup_or_create(struct ovl_fs *ofs,
static int ovl_create_volatile_dirty(struct ovl_fs *ofs)
static int ovl_make_workdir(struct super_block *sb, struct ovl_fs *ofs,
static int ovl_get_workdir(struct super_block *sb, struct ovl_fs *ofs,
static int ovl_get_indexdir(struct super_block *sb, struct ovl_fs *ofs,
static bool ovl_lower_uuid_ok(struct ovl_fs *ofs, const uuid_t *uuid)
static int ovl_get_fsid(struct ovl_fs *ofs, const struct path *path)
struct ovl_fs *ofs = OVL_FS(sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(sb);
int ovl_check_metacopy_xattr(struct ovl_fs *ofs, const struct path *path,
int ovl_set_metacopy_xattr(struct ovl_fs *ofs, struct dentry *d, struct ovl_metacopy *metacopy)
char *ovl_get_redirect_xattr(struct ovl_fs *ofs, const struct path *path, int padding)
int ovl_validate_verity(struct ovl_fs *ofs,
int ovl_get_verity_digest(struct ovl_fs *ofs, const struct path *src,
int ovl_sync_status(struct ovl_fs *ofs)
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
void ovl_layer_set_xwhiteouts(struct ovl_fs *ofs,
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
bool ovl_path_is_whiteout(struct ovl_fs *ofs, const struct path *path)
struct ovl_fs *ofs = OVL_FS(sb);
bool ovl_path_check_origin_xattr(struct ovl_fs *ofs, const struct path *path)
bool ovl_path_check_xwhiteout_xattr(struct ovl_fs *ofs, const struct path *path)
bool ovl_init_uuid_xattr(struct super_block *sb, struct ovl_fs *ofs,
char ovl_get_dir_xattr_val(struct ovl_fs *ofs, const struct path *path,
int ovl_check_setxattr(struct ovl_fs *ofs, struct dentry *upperdentry,
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(inode->i_sb);
struct ovl_fs *ofs = OVL_FS(sb);
struct ovl_fs *ofs = OVL_FS(inode->i_sb);
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = OVL_FS(sb);
const struct xattr_handler * const *ovl_xattr_handlers(struct ovl_fs *ofs)
struct ovl_fs *ofs = OVL_FS(dentry->d_sb);
struct ovl_fs *ofs = sb->s_fs_info;