Lines Matching refs:ofs
343 struct ovl_fs *ofs = fc->s_fs_info;
344 struct ovl_config *config = &ofs->config;
554 struct ovl_fs *ofs = fc->s_fs_info;
555 struct ovl_config *config = &ofs->config;
656 struct ovl_fs *ofs = fc->s_fs_info;
660 * ofs is stored in the fs_context when it is initialized.
661 * ofs is transferred to the superblock on a successful mount,
665 if (ofs)
666 ovl_free_fs(ofs);
675 struct ovl_fs *ofs = OVL_FS(sb);
679 if (!(fc->sb_flags & SB_RDONLY) && ovl_force_readonly(ofs))
683 upper_sb = ovl_upper_mnt(ofs)->mnt_sb;
684 if (ovl_should_sync(ofs)) {
712 struct ovl_fs *ofs;
727 ofs = kzalloc(sizeof(struct ovl_fs), GFP_KERNEL);
728 if (!ofs)
731 ofs->config.redirect_mode = ovl_redirect_mode_def();
732 ofs->config.index = ovl_index_def;
733 ofs->config.uuid = ovl_uuid_def();
734 ofs->config.nfs_export = ovl_nfs_export_def;
735 ofs->config.xino = ovl_xino_def();
736 ofs->config.metacopy = ovl_metacopy_def;
738 fc->s_fs_info = ofs;
749 void ovl_free_fs(struct ovl_fs *ofs)
754 iput(ofs->workbasedir_trap);
755 iput(ofs->indexdir_trap);
756 iput(ofs->workdir_trap);
757 dput(ofs->whiteout);
758 dput(ofs->indexdir);
759 dput(ofs->workdir);
760 if (ofs->workdir_locked)
761 ovl_inuse_unlock(ofs->workbasedir);
762 dput(ofs->workbasedir);
763 if (ofs->upperdir_locked)
764 ovl_inuse_unlock(ovl_upper_mnt(ofs)->mnt_root);
766 /* Reuse ofs->config.lowerdirs as a vfsmount array before freeing it */
767 mounts = (struct vfsmount **) ofs->config.lowerdirs;
768 for (i = 0; i < ofs->numlayer; i++) {
769 iput(ofs->layers[i].trap);
770 kfree(ofs->config.lowerdirs[i]);
771 mounts[i] = ofs->layers[i].mnt;
773 kern_unmount_array(mounts, ofs->numlayer);
774 kfree(ofs->layers);
775 for (i = 0; i < ofs->numfs; i++)
776 free_anon_bdev(ofs->fs[i].pseudo_dev);
777 kfree(ofs->fs);
779 kfree(ofs->config.lowerdirs);
780 kfree(ofs->config.upperdir);
781 kfree(ofs->config.workdir);
782 if (ofs->creator_cred)
783 put_cred(ofs->creator_cred);
784 kfree(ofs);
962 struct ovl_fs *ofs = OVL_FS(sb);
964 char **lowerdirs = ofs->config.lowerdirs;
977 nr_lower = ofs->numlayer;
978 nr_merged_lower = nr_lower - ofs->numdatalayer;
986 if (ofs->config.upperdir) {
987 seq_show_option(m, "upperdir", ofs->config.upperdir);
988 seq_show_option(m, "workdir", ofs->config.workdir);
990 if (ofs->config.default_permissions)
992 if (ofs->config.redirect_mode != ovl_redirect_mode_def())
994 ovl_redirect_mode(&ofs->config));
995 if (ofs->config.index != ovl_index_def)
996 seq_printf(m, ",index=%s", ofs->config.index ? "on" : "off");
997 if (ofs->config.uuid != ovl_uuid_def())
998 seq_printf(m, ",uuid=%s", ovl_uuid_mode(&ofs->config));
999 if (ofs->config.nfs_export != ovl_nfs_export_def)
1000 seq_printf(m, ",nfs_export=%s", ofs->config.nfs_export ?
1002 if (ofs->config.xino != ovl_xino_def() && !ovl_same_fs(ofs))
1003 seq_printf(m, ",xino=%s", ovl_xino_mode(&ofs->config));
1004 if (ofs->config.metacopy != ovl_metacopy_def)
1006 ofs->config.metacopy ? "on" : "off");
1007 if (ofs->config.ovl_volatile)
1009 if (ofs->config.userxattr)
1011 if (ofs->config.verity_mode != ovl_verity_mode_def())
1013 ovl_verity_mode(&ofs->config));