diff options
Diffstat (limited to 'fs/ext4/ext4.h')
-rw-r--r-- | fs/ext4/ext4.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h index d3a534fdc5ff..f1c65dc7cc0a 100644 --- a/fs/ext4/ext4.h +++ b/fs/ext4/ext4.h | |||
@@ -31,6 +31,7 @@ | |||
31 | #include <linux/percpu_counter.h> | 31 | #include <linux/percpu_counter.h> |
32 | #include <linux/ratelimit.h> | 32 | #include <linux/ratelimit.h> |
33 | #include <crypto/hash.h> | 33 | #include <crypto/hash.h> |
34 | #include <linux/falloc.h> | ||
34 | #ifdef __KERNEL__ | 35 | #ifdef __KERNEL__ |
35 | #include <linux/compat.h> | 36 | #include <linux/compat.h> |
36 | #endif | 37 | #endif |
@@ -567,6 +568,8 @@ enum { | |||
567 | #define EXT4_GET_BLOCKS_NO_LOCK 0x0100 | 568 | #define EXT4_GET_BLOCKS_NO_LOCK 0x0100 |
568 | /* Do not put hole in extent cache */ | 569 | /* Do not put hole in extent cache */ |
569 | #define EXT4_GET_BLOCKS_NO_PUT_HOLE 0x0200 | 570 | #define EXT4_GET_BLOCKS_NO_PUT_HOLE 0x0200 |
571 | /* Convert written extents to unwritten */ | ||
572 | #define EXT4_GET_BLOCKS_CONVERT_UNWRITTEN 0x0400 | ||
570 | 573 | ||
571 | /* | 574 | /* |
572 | * The bit position of these flags must not overlap with any of the | 575 | * The bit position of these flags must not overlap with any of the |
@@ -998,6 +1001,8 @@ struct ext4_inode_info { | |||
998 | #define EXT4_MOUNT2_STD_GROUP_SIZE 0x00000002 /* We have standard group | 1001 | #define EXT4_MOUNT2_STD_GROUP_SIZE 0x00000002 /* We have standard group |
999 | size of blocksize * 8 | 1002 | size of blocksize * 8 |
1000 | blocks */ | 1003 | blocks */ |
1004 | #define EXT4_MOUNT2_HURD_COMPAT 0x00000004 /* Support HURD-castrated | ||
1005 | file systems */ | ||
1001 | 1006 | ||
1002 | #define clear_opt(sb, opt) EXT4_SB(sb)->s_mount_opt &= \ | 1007 | #define clear_opt(sb, opt) EXT4_SB(sb)->s_mount_opt &= \ |
1003 | ~EXT4_MOUNT_##opt | 1008 | ~EXT4_MOUNT_##opt |
@@ -1326,6 +1331,7 @@ struct ext4_sb_info { | |||
1326 | struct list_head s_es_lru; | 1331 | struct list_head s_es_lru; |
1327 | unsigned long s_es_last_sorted; | 1332 | unsigned long s_es_last_sorted; |
1328 | struct percpu_counter s_extent_cache_cnt; | 1333 | struct percpu_counter s_extent_cache_cnt; |
1334 | struct mb_cache *s_mb_cache; | ||
1329 | spinlock_t s_es_lru_lock ____cacheline_aligned_in_smp; | 1335 | spinlock_t s_es_lru_lock ____cacheline_aligned_in_smp; |
1330 | 1336 | ||
1331 | /* Ratelimit ext4 messages. */ | 1337 | /* Ratelimit ext4 messages. */ |
@@ -2133,8 +2139,6 @@ extern int ext4_writepage_trans_blocks(struct inode *); | |||
2133 | extern int ext4_chunk_trans_blocks(struct inode *, int nrblocks); | 2139 | extern int ext4_chunk_trans_blocks(struct inode *, int nrblocks); |
2134 | extern int ext4_block_truncate_page(handle_t *handle, | 2140 | extern int ext4_block_truncate_page(handle_t *handle, |
2135 | struct address_space *mapping, loff_t from); | 2141 | struct address_space *mapping, loff_t from); |
2136 | extern int ext4_block_zero_page_range(handle_t *handle, | ||
2137 | struct address_space *mapping, loff_t from, loff_t length); | ||
2138 | extern int ext4_zero_partial_blocks(handle_t *handle, struct inode *inode, | 2142 | extern int ext4_zero_partial_blocks(handle_t *handle, struct inode *inode, |
2139 | loff_t lstart, loff_t lend); | 2143 | loff_t lstart, loff_t lend); |
2140 | extern int ext4_page_mkwrite(struct vm_area_struct *vma, struct vm_fault *vmf); | 2144 | extern int ext4_page_mkwrite(struct vm_area_struct *vma, struct vm_fault *vmf); |
@@ -2757,6 +2761,7 @@ extern int ext4_find_delalloc_cluster(struct inode *inode, ext4_lblk_t lblk); | |||
2757 | extern int ext4_fiemap(struct inode *inode, struct fiemap_extent_info *fieinfo, | 2761 | extern int ext4_fiemap(struct inode *inode, struct fiemap_extent_info *fieinfo, |
2758 | __u64 start, __u64 len); | 2762 | __u64 start, __u64 len); |
2759 | extern int ext4_ext_precache(struct inode *inode); | 2763 | extern int ext4_ext_precache(struct inode *inode); |
2764 | extern int ext4_collapse_range(struct inode *inode, loff_t offset, loff_t len); | ||
2760 | 2765 | ||
2761 | /* move_extent.c */ | 2766 | /* move_extent.c */ |
2762 | extern void ext4_double_down_write_data_sem(struct inode *first, | 2767 | extern void ext4_double_down_write_data_sem(struct inode *first, |
@@ -2766,6 +2771,8 @@ extern void ext4_double_up_write_data_sem(struct inode *orig_inode, | |||
2766 | extern int ext4_move_extents(struct file *o_filp, struct file *d_filp, | 2771 | extern int ext4_move_extents(struct file *o_filp, struct file *d_filp, |
2767 | __u64 start_orig, __u64 start_donor, | 2772 | __u64 start_orig, __u64 start_donor, |
2768 | __u64 len, __u64 *moved_len); | 2773 | __u64 len, __u64 *moved_len); |
2774 | extern int mext_next_extent(struct inode *inode, struct ext4_ext_path *path, | ||
2775 | struct ext4_extent **extent); | ||
2769 | 2776 | ||
2770 | /* page-io.c */ | 2777 | /* page-io.c */ |
2771 | extern int __init ext4_init_pageio(void); | 2778 | extern int __init ext4_init_pageio(void); |