+++ /dev/null
----
- fs/ext4/balloc.c | 1 +
- fs/ext4/ext4.h | 2 ++
- fs/ext4/ext4_extents.h | 9 +++++++++
- fs/ext4/ext4_jbd2.c | 2 ++
- fs/ext4/extents.c | 23 ++++++++++++++++-------
- fs/ext4/ialloc.c | 3 ++-
- fs/ext4/inode.c | 1 +
- fs/ext4/mballoc.c | 4 ++++
- fs/ext4/super.c | 9 +++++++++
- 9 files changed, 46 insertions(+), 8 deletions(-)
-
-Index: linux-stage/fs/ext4/balloc.c
-===================================================================
---- linux-stage.orig/fs/ext4/balloc.c
-+++ linux-stage/fs/ext4/balloc.c
-@@ -231,6 +231,7 @@ struct ext4_group_desc * ext4_get_group_
- *bh = sbi->s_group_desc[group_desc];
- return desc;
- }
-+EXPORT_SYMBOL(ext4_get_group_desc);
-
- static int ext4_valid_block_bitmap(struct super_block *sb,
- struct ext4_group_desc *desc,
-Index: linux-stage/fs/ext4/ext4.h
-===================================================================
---- linux-stage.orig/fs/ext4/ext4.h
-+++ linux-stage/fs/ext4/ext4.h
-@@ -1783,6 +1783,8 @@ extern struct inode * ext4_orphan_get(st
- extern unsigned long ext4_count_free_inodes(struct super_block *);
- extern unsigned long ext4_count_dirs(struct super_block *);
- extern void ext4_check_inodes_bitmap(struct super_block *);
-+extern struct buffer_head *ext4_read_inode_bitmap(struct super_block *sb,
-+ ext4_group_t block_group);
- extern void ext4_mark_bitmap_end(int start_bit, int end_bit, char *bitmap);
- extern int ext4_init_inode_table(struct super_block *sb,
- ext4_group_t group, int barrier);
-Index: linux-stage/fs/ext4/ext4_extents.h
-===================================================================
---- linux-stage.orig/fs/ext4/ext4_extents.h
-+++ linux-stage/fs/ext4/ext4_extents.h
-@@ -290,5 +290,14 @@ extern struct ext4_ext_path *ext4_ext_fi
- struct ext4_ext_path *);
- extern void ext4_ext_drop_refs(struct ext4_ext_path *);
- extern int ext4_ext_check_inode(struct inode *inode);
-+extern int ext4_ext_search_right(struct inode *inode,
-+ struct ext4_ext_path *path,
-+ ext4_lblk_t *logical, ext4_fsblk_t *phys);
-+extern int ext4_ext_search_left(struct inode *inode,
-+ struct ext4_ext_path *path,
-+ ext4_lblk_t *logical, ext4_fsblk_t *phys);
-+extern int ext4_ext_walk_space(struct inode *inode, ext4_lblk_t block,
-+ ext4_lblk_t num, ext_prepare_callback func,
-+ void *cbdata);
- #endif /* _EXT4_EXTENTS */
-
-Index: linux-stage/fs/ext4/ext4_jbd2.c
-===================================================================
---- linux-stage.orig/fs/ext4/ext4_jbd2.c
-+++ linux-stage/fs/ext4/ext4_jbd2.c
-@@ -19,6 +19,7 @@ int __ext4_journal_get_write_access(cons
- }
- return err;
- }
-+EXPORT_SYMBOL(__ext4_journal_get_write_access);
-
- /*
- * The ext4 forget function must perform a revoke if we are freeing data
-@@ -150,3 +151,4 @@ int __ext4_handle_dirty_super(const char
- sb->s_dirt = 1;
- return err;
- }
-+EXPORT_SYMBOL(__ext4_handle_dirty_metadata);
-Index: linux-stage/fs/ext4/extents.c
-===================================================================
---- linux-stage.orig/fs/ext4/extents.c
-+++ linux-stage/fs/ext4/extents.c
-@@ -1236,9 +1236,9 @@ out:
- * returns 0 at @phys
- * return value contains 0 (success) or error code
- */
--static int ext4_ext_search_left(struct inode *inode,
-- struct ext4_ext_path *path,
-- ext4_lblk_t *logical, ext4_fsblk_t *phys)
-+int ext4_ext_search_left(struct inode *inode,
-+ struct ext4_ext_path *path,
-+ ext4_lblk_t *logical, ext4_fsblk_t *phys)
- {
- struct ext4_extent_idx *ix;
- struct ext4_extent *ex;
-@@ -1301,9 +1301,9 @@ static int ext4_ext_search_left(struct i
- * returns 0 at @phys
- * return value contains 0 (success) or error code
- */
--static int ext4_ext_search_right(struct inode *inode,
-- struct ext4_ext_path *path,
-- ext4_lblk_t *logical, ext4_fsblk_t *phys)
-+int ext4_ext_search_right(struct inode *inode,
-+ struct ext4_ext_path *path,
-+ ext4_lblk_t *logical, ext4_fsblk_t *phys)
- {
- struct buffer_head *bh = NULL;
- struct ext4_extent_header *eh;
-@@ -1878,7 +1878,7 @@ cleanup:
- return err;
- }
-
--static int ext4_ext_walk_space(struct inode *inode, ext4_lblk_t block,
-+extern int ext4_ext_walk_space(struct inode *inode, ext4_lblk_t block,
- ext4_lblk_t num, ext_prepare_callback func,
- void *cbdata)
- {
-@@ -4415,3 +4415,12 @@ int ext4_fiemap(struct inode *inode, str
-
- return error;
- }
-+
-+EXPORT_SYMBOL(ext4_ext_search_right);
-+EXPORT_SYMBOL(ext4_ext_search_left);
-+EXPORT_SYMBOL(ext4_ext_insert_extent);
-+EXPORT_SYMBOL(ext4_mb_new_blocks);
-+EXPORT_SYMBOL(ext4_mark_inode_dirty);
-+EXPORT_SYMBOL(ext4_ext_walk_space);
-+EXPORT_SYMBOL(ext4_ext_find_extent);
-+EXPORT_SYMBOL(ext4_ext_drop_refs);
-Index: linux-stage/fs/ext4/ialloc.c
-===================================================================
---- linux-stage.orig/fs/ext4/ialloc.c
-+++ linux-stage/fs/ext4/ialloc.c
-@@ -99,7 +99,7 @@ static unsigned ext4_init_inode_bitmap(s
- *
- * Return buffer_head of bitmap on success or NULL.
- */
--static struct buffer_head *
-+struct buffer_head *
- ext4_read_inode_bitmap(struct super_block *sb, ext4_group_t block_group)
- {
- struct ext4_group_desc *desc;
-@@ -164,6 +164,7 @@ ext4_read_inode_bitmap(struct super_bloc
- }
- return bh;
- }
-+EXPORT_SYMBOL(ext4_read_inode_bitmap);
-
- /*
- * NOTE! When we get the inode, we're the only people
-Index: linux-stage/fs/ext4/inode.c
-===================================================================
---- linux-stage.orig/fs/ext4/inode.c
-+++ linux-stage/fs/ext4/inode.c
-@@ -1393,6 +1393,7 @@ int ext4_map_blocks(handle_t *handle, st
- }
- return retval;
- }
-+EXPORT_SYMBOL(ext4_map_blocks);
-
- /* Maximum number of blocks we map for direct IO at once. */
- #define DIO_MAX_BLOCKS 4096
-@@ -4689,6 +4690,7 @@ out_stop:
- ext4_journal_stop(handle);
- trace_ext4_truncate_exit(inode);
- }
-+EXPORT_SYMBOL(ext4_truncate);
-
- /*
- * ext4_get_inode_loc returns with an extra refcount against the inode's
-@@ -5102,6 +5104,7 @@ bad_inode:
- iget_failed(inode);
- return ERR_PTR(ret);
- }
-+EXPORT_SYMBOL(ext4_iget);
-
- static int ext4_inode_blocks_set(handle_t *handle,
- struct ext4_inode *raw_inode,
-Index: linux-stage/fs/ext4/mballoc.c
-===================================================================
---- linux-stage.orig/fs/ext4/mballoc.c
-+++ linux-stage/fs/ext4/mballoc.c
-@@ -3856,6 +3856,7 @@ repeat:
- call_rcu(&(pa)->u.pa_rcu, ext4_mb_pa_callback);
- }
- }
-+EXPORT_SYMBOL(ext4_discard_preallocations);
-
- #ifdef CONFIG_EXT4_DEBUG
- static void ext4_mb_show_ac(struct ext4_allocation_context *ac)
-@@ -4976,3 +4977,6 @@ int ext4_trim_fs(struct super_block *sb,
-
- return ret;
- }
-+
-+EXPORT_SYMBOL(ext4_free_blocks);
-+
-Index: linux-stage/fs/ext4/super.c
-===================================================================
---- linux-stage.orig/fs/ext4/super.c
-+++ linux-stage/fs/ext4/super.c
-@@ -202,6 +202,7 @@ __u32 ext4_itable_unused_count(struct su
- (EXT4_DESC_SIZE(sb) >= EXT4_MIN_DESC_SIZE_64BIT ?
- (__u32)le16_to_cpu(bg->bg_itable_unused_hi) << 16 : 0);
- }
-+EXPORT_SYMBOL(ext4_itable_unused_count);
-
- void ext4_block_bitmap_set(struct super_block *sb,
- struct ext4_group_desc *bg, ext4_fsblk_t blk)
-@@ -4280,6 +4282,7 @@ int ext4_force_commit(struct super_block
-
- return ret;
- }
-+EXPORT_SYMBOL(ext4_force_commit);
-
- static void ext4_write_super(struct super_block *sb)
- {
-@@ -5210,6 +5213,10 @@ static void __exit ext4_exit_fs(void)
- ext4_exit_pageio();
- }
-
-+EXPORT_SYMBOL(ext4_bread);
-+EXPORT_SYMBOL(ext4_journal_start_sb);
-+EXPORT_SYMBOL(__ext4_journal_stop);
-+
- MODULE_AUTHOR("Remy Card, Stephen Tweedie, Andrew Morton, Andreas Dilger, Theodore Ts'o and others");
- MODULE_DESCRIPTION("Fourth Extended Filesystem");
- MODULE_LICENSE("GPL");