Whamcloud - gitweb
Update smfs: fix bugs of smfs_create
[fs/lustre-release.git] / lustre / smfs / smfs_internal.h
index fe6b574..a84ec67 100644 (file)
@@ -46,19 +46,52 @@ struct option {
        char *value;
        struct list_head list;
 };
+
+extern int init_smfs_proc_sys(void);
 /*options.c*/
 extern int get_opt(struct option **option, char **pos);
 extern void cleanup_option(void);
 extern int init_option(char *data);
 /*cache.c*/
-void sm_setup_inode_ops(struct inode *cache_inode, struct inode *inode);
+void sm_set_inode_ops(struct inode *cache_inode, struct inode *inode);
 void sm_set_sb_ops(struct super_block *cache_sb, struct super_block *sb);
 void init_smfs_cache(void);
 void cleanup_smfs_cache(void);
-
+/*super.c*/
+extern int init_smfs(void);
+extern int cleanup_smfs(void);
+extern void smfs_put_super(struct super_block *sb);
+extern void duplicate_sb(struct super_block *csb, struct super_block *sb);
 /*sysctl.c*/
 extern int sm_debug_level;
 extern int sm_inodes;
 extern long sm_kmemory;
 extern int sm_stack;
-#endif /* __LINUX_SNAPFS_H */
+/*dir.c*/
+extern struct inode_operations smfs_dir_iops; 
+extern struct file_operations smfs_dir_fops; 
+extern int smfs_prepare_dentry(struct dentry *dentry, 
+                              struct dentry *parent,
+                              struct qstr *name);
+
+void smfs_clear_dentry(struct dentry *dentry);
+/*inode.c*/
+extern void duplicate_inode(struct inode *cache_inode, struct inode *inode);
+/*file.c*/
+extern void smfs_prepare_cachefile(struct inode *inode,
+                                  struct file *file, 
+                                  struct inode *cache_inode,
+                                  struct file *cache_file,
+                                  struct dentry *cache_dentry);
+extern int smfs_ioctl(struct inode * inode, struct file * filp,  unsigned int cmd,
+                      unsigned long arg);
+extern int smfs_fsync(struct file * file, struct dentry *dentry, int datasync);
+extern int smfs_setattr(struct dentry *dentry, struct iattr *attr); 
+extern int smfs_setxattr(struct dentry *dentry, const char *name,
+                        const void *value, size_t size, int flags);
+extern int smfs_getxattr(struct dentry *dentry, const char *name,
+                        void *buffer, size_t size);
+extern ssize_t smfs_listxattr(struct dentry *dentry, char *buffer, size_t size);
+extern int smfs_removexattr(struct dentry *dentry, const char *name);
+extern void smfs_update_file(struct file *file, struct file *cache_file);
+#endif /* __LINUX_SMFS_H */