aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>2008-01-28 23:58:26 -0500
committerTheodore Ts'o <tytso@mit.edu>2008-01-28 23:58:26 -0500
commitc14c6fd5c56a0d0495d8a7c0f2bc330be658663e (patch)
tree6ca056c1cff1103739170d7a19c66a9966c59eb2 /include/linux
parent25ec56b518257a56d2ff41a941d288e4b5ff9488 (diff)
ext4: Add EXT4_IOC_MIGRATE ioctl
The below patch add ioctl for migrating ext3 indirect block mapped inode to ext4 extent mapped inode. Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/ext4_fs.h4
-rw-r--r--include/linux/ext4_fs_extents.h2
2 files changed, 6 insertions, 0 deletions
diff --git a/include/linux/ext4_fs.h b/include/linux/ext4_fs.h
index b6092940c8b8..213974f7c5d8 100644
--- a/include/linux/ext4_fs.h
+++ b/include/linux/ext4_fs.h
@@ -243,6 +243,7 @@ struct ext4_new_group_data {
243#endif 243#endif
244#define EXT4_IOC_GETRSVSZ _IOR('f', 5, long) 244#define EXT4_IOC_GETRSVSZ _IOR('f', 5, long)
245#define EXT4_IOC_SETRSVSZ _IOW('f', 6, long) 245#define EXT4_IOC_SETRSVSZ _IOW('f', 6, long)
246#define EXT4_IOC_MIGRATE _IO('f', 7)
246 247
247/* 248/*
248 * ioctl commands in 32 bit emulation 249 * ioctl commands in 32 bit emulation
@@ -983,6 +984,9 @@ extern int ext4_ioctl (struct inode *, struct file *, unsigned int,
983 unsigned long); 984 unsigned long);
984extern long ext4_compat_ioctl (struct file *, unsigned int, unsigned long); 985extern long ext4_compat_ioctl (struct file *, unsigned int, unsigned long);
985 986
987/* migrate.c */
988extern int ext4_ext_migrate(struct inode *, struct file *, unsigned int,
989 unsigned long);
986/* namei.c */ 990/* namei.c */
987extern int ext4_orphan_add(handle_t *, struct inode *); 991extern int ext4_orphan_add(handle_t *, struct inode *);
988extern int ext4_orphan_del(handle_t *, struct inode *); 992extern int ext4_orphan_del(handle_t *, struct inode *);
diff --git a/include/linux/ext4_fs_extents.h b/include/linux/ext4_fs_extents.h
index 023683b9d883..1cfb4854c964 100644
--- a/include/linux/ext4_fs_extents.h
+++ b/include/linux/ext4_fs_extents.h
@@ -212,6 +212,8 @@ static inline int ext4_ext_get_actual_len(struct ext4_extent *ext)
212 (le16_to_cpu(ext->ee_len) - EXT_INIT_MAX_LEN)); 212 (le16_to_cpu(ext->ee_len) - EXT_INIT_MAX_LEN));
213} 213}
214 214
215extern ext4_fsblk_t idx_pblock(struct ext4_extent_idx *);
216extern void ext4_ext_store_pblock(struct ext4_extent *, ext4_fsblk_t);
215extern int ext4_extent_tree_init(handle_t *, struct inode *); 217extern int ext4_extent_tree_init(handle_t *, struct inode *);
216extern int ext4_ext_calc_credits_for_insert(struct inode *, struct ext4_ext_path *); 218extern int ext4_ext_calc_credits_for_insert(struct inode *, struct ext4_ext_path *);
217extern int ext4_ext_try_to_merge(struct inode *inode, 219extern int ext4_ext_try_to_merge(struct inode *inode,