introduce fs_context methods
[muen/linux.git] / include / linux / fs_context.h
index 7feb018..087c129 100644 (file)
@@ -20,8 +20,13 @@ struct cred;
 struct dentry;
 struct file_operations;
 struct file_system_type;
+struct mnt_namespace;
 struct net;
+struct pid_namespace;
+struct super_block;
 struct user_namespace;
+struct vfsmount;
+struct path;
 
 enum fs_context_purpose {
        FS_CONTEXT_FOR_MOUNT,           /* New superblock for explicit mount */
@@ -39,6 +44,7 @@ enum fs_context_purpose {
  * See Documentation/filesystems/mounting.txt
  */
 struct fs_context {
+       const struct fs_context_operations *ops;
        struct file_system_type *fs_type;
        void                    *fs_private;    /* The filesystem's context */
        struct dentry           *root;          /* The root and superblock */
@@ -54,6 +60,13 @@ struct fs_context {
        bool                    need_free:1;    /* Need to call ops->free() */
 };
 
+struct fs_context_operations {
+       void (*free)(struct fs_context *fc);
+       int (*parse_monolithic)(struct fs_context *fc, void *data);
+       int (*get_tree)(struct fs_context *fc);
+       int (*reconfigure)(struct fs_context *fc);
+};
+
 /*
  * fs_context manipulation functions.
  */