#ifndef OCFS2_FILE_H
#define OCFS2_FILE_H
-extern struct file_operations ocfs2_fops;
-extern struct file_operations ocfs2_dops;
+extern const struct file_operations ocfs2_fops;
+extern const struct file_operations ocfs2_dops;
extern struct inode_operations ocfs2_file_iops;
extern struct inode_operations ocfs2_special_file_iops;
+struct ocfs2_alloc_context;
enum ocfs2_alloc_restarted {
- RESTART_TRANS = 0,
+ RESTART_NONE = 0,
+ RESTART_TRANS,
RESTART_META
};
-int ocfs2_extend_allocation(struct ocfs2_super *osb,
- struct inode *inode,
- u32 clusters_to_add,
- struct buffer_head *fe_bh,
- struct ocfs2_journal_handle *handle,
- struct ocfs2_alloc_context *data_ac,
- struct ocfs2_alloc_context *meta_ac,
- enum ocfs2_alloc_restarted *reason);
+int ocfs2_do_extend_allocation(struct ocfs2_super *osb,
+ struct inode *inode,
+ u32 clusters_to_add,
+ struct buffer_head *fe_bh,
+ struct ocfs2_journal_handle *handle,
+ struct ocfs2_alloc_context *data_ac,
+ struct ocfs2_alloc_context *meta_ac,
+ enum ocfs2_alloc_restarted *reason);
int ocfs2_setattr(struct dentry *dentry, struct iattr *attr);
int ocfs2_getattr(struct vfsmount *mnt, struct dentry *dentry,
struct kstat *stat);
-int ocfs2_sync_inode(struct inode *inode);
-int ocfs2_extend_file(struct ocfs2_super *osb,
- struct inode *inode,
- u64 new_i_size,
- u64 *bytes_extended);
int ocfs2_set_inode_size(struct ocfs2_journal_handle *handle,
struct inode *inode,
struct buffer_head *fe_bh,
u64 new_i_size);
-void ocfs2_file_finish_extension(struct inode *inode, loff_t newsize,
- unsigned direct_extend);
-
#endif /* OCFS2_FILE_H */