diff options
Diffstat (limited to 'fs/ext2/ext2.h')
-rw-r--r-- | fs/ext2/ext2.h | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/fs/ext2/ext2.h b/fs/ext2/ext2.h index a08052d2c008..7730388c4931 100644 --- a/fs/ext2/ext2.h +++ b/fs/ext2/ext2.h | |||
@@ -33,22 +33,9 @@ struct ext2_inode_info { | |||
33 | */ | 33 | */ |
34 | __u32 i_block_group; | 34 | __u32 i_block_group; |
35 | 35 | ||
36 | /* | 36 | /* block reservation info */ |
37 | * i_next_alloc_block is the logical (file-relative) number of the | 37 | struct ext2_block_alloc_info *i_block_alloc_info; |
38 | * most-recently-allocated block in this file. Yes, it is misnamed. | ||
39 | * We use this for detecting linearly ascending allocation requests. | ||
40 | */ | ||
41 | __u32 i_next_alloc_block; | ||
42 | 38 | ||
43 | /* | ||
44 | * i_next_alloc_goal is the *physical* companion to i_next_alloc_block. | ||
45 | * it the the physical block number of the block which was most-recently | ||
46 | * allocated to this file. This give us the goal (target) for the next | ||
47 | * allocation when we detect linearly ascending requests. | ||
48 | */ | ||
49 | __u32 i_next_alloc_goal; | ||
50 | __u32 i_prealloc_block; | ||
51 | __u32 i_prealloc_count; | ||
52 | __u32 i_dir_start_lookup; | 39 | __u32 i_dir_start_lookup; |
53 | #ifdef CONFIG_EXT2_FS_XATTR | 40 | #ifdef CONFIG_EXT2_FS_XATTR |
54 | /* | 41 | /* |
@@ -65,7 +52,16 @@ struct ext2_inode_info { | |||
65 | struct posix_acl *i_default_acl; | 52 | struct posix_acl *i_default_acl; |
66 | #endif | 53 | #endif |
67 | rwlock_t i_meta_lock; | 54 | rwlock_t i_meta_lock; |
55 | |||
56 | /* | ||
57 | * truncate_mutex is for serialising ext2_truncate() against | ||
58 | * ext2_getblock(). It also protects the internals of the inode's | ||
59 | * reservation data structures: ext2_reserve_window and | ||
60 | * ext2_reserve_window_node. | ||
61 | */ | ||
62 | struct mutex truncate_mutex; | ||
68 | struct inode vfs_inode; | 63 | struct inode vfs_inode; |
64 | struct list_head i_orphan; /* unlinked but open inodes */ | ||
69 | }; | 65 | }; |
70 | 66 | ||
71 | /* | 67 | /* |
@@ -91,8 +87,9 @@ static inline struct ext2_inode_info *EXT2_I(struct inode *inode) | |||
91 | /* balloc.c */ | 87 | /* balloc.c */ |
92 | extern int ext2_bg_has_super(struct super_block *sb, int group); | 88 | extern int ext2_bg_has_super(struct super_block *sb, int group); |
93 | extern unsigned long ext2_bg_num_gdb(struct super_block *sb, int group); | 89 | extern unsigned long ext2_bg_num_gdb(struct super_block *sb, int group); |
94 | extern int ext2_new_block (struct inode *, unsigned long, | 90 | extern ext2_fsblk_t ext2_new_block(struct inode *, unsigned long, int *); |
95 | __u32 *, __u32 *, int *); | 91 | extern ext2_fsblk_t ext2_new_blocks(struct inode *, unsigned long, |
92 | unsigned long *, int *); | ||
96 | extern void ext2_free_blocks (struct inode *, unsigned long, | 93 | extern void ext2_free_blocks (struct inode *, unsigned long, |
97 | unsigned long); | 94 | unsigned long); |
98 | extern unsigned long ext2_count_free_blocks (struct super_block *); | 95 | extern unsigned long ext2_count_free_blocks (struct super_block *); |
@@ -101,6 +98,10 @@ extern void ext2_check_blocks_bitmap (struct super_block *); | |||
101 | extern struct ext2_group_desc * ext2_get_group_desc(struct super_block * sb, | 98 | extern struct ext2_group_desc * ext2_get_group_desc(struct super_block * sb, |
102 | unsigned int block_group, | 99 | unsigned int block_group, |
103 | struct buffer_head ** bh); | 100 | struct buffer_head ** bh); |
101 | extern void ext2_discard_reservation (struct inode *); | ||
102 | extern int ext2_should_retry_alloc(struct super_block *sb, int *retries); | ||
103 | extern void ext2_init_block_alloc_info(struct inode *); | ||
104 | extern void ext2_rsv_window_add(struct super_block *sb, struct ext2_reserve_window_node *rsv); | ||
104 | 105 | ||
105 | /* dir.c */ | 106 | /* dir.c */ |
106 | extern int ext2_add_link (struct dentry *, struct inode *); | 107 | extern int ext2_add_link (struct dentry *, struct inode *); |
@@ -128,7 +129,6 @@ extern int ext2_write_inode (struct inode *, int); | |||
128 | extern void ext2_put_inode (struct inode *); | 129 | extern void ext2_put_inode (struct inode *); |
129 | extern void ext2_delete_inode (struct inode *); | 130 | extern void ext2_delete_inode (struct inode *); |
130 | extern int ext2_sync_inode (struct inode *); | 131 | extern int ext2_sync_inode (struct inode *); |
131 | extern void ext2_discard_prealloc (struct inode *); | ||
132 | extern int ext2_get_block(struct inode *, sector_t, struct buffer_head *, int); | 132 | extern int ext2_get_block(struct inode *, sector_t, struct buffer_head *, int); |
133 | extern void ext2_truncate (struct inode *); | 133 | extern void ext2_truncate (struct inode *); |
134 | extern int ext2_setattr (struct dentry *, struct iattr *); | 134 | extern int ext2_setattr (struct dentry *, struct iattr *); |