===================================================================
--- linux-2.6.18.orig/include/linux/ext3_extents.h
+++ linux-2.6.18/include/linux/ext3_extents.h
-@@ -142,8 +142,8 @@ struct ext3_ext_path {
+@@ -142,8 +142,9 @@ struct ext3_ext_path {
* callback must return valid extent (passed or newly created)
*/
typedef int (*ext_prepare_callback)(struct inode *, struct ext3_ext_path *,
- void *);
+ struct ext3_ext_cache *,
+ struct ext3_extent *, void *);
++#define HAVE_EXT_PREPARE_CB_EXTENT
#define EXT_CONTINUE 0
#define EXT_BREAK 1
}
+struct fiemap_internal {
-+ struct fiemap *fiemap_s;
++ struct fiemap *fiemap_s;
+ struct fiemap_extent fm_extent;
-+ size_t tot_mapping_len;
-+ char *cur_ext_ptr;
-+ int current_extent;
-+ int err;
++ size_t tot_mapping_len;
++ char *cur_ext_ptr;
++ int current_extent;
++ int err;
+};
+
+/*
+ */
+ mutex_lock(&EXT3_I(inode)->truncate_mutex);
+ err = ext3_ext_walk_space(inode, start_blk , EXT_MAX_BLOCK - start_blk,
-+ (void *)ext3_ext_fiemap_cb, &fiemap_i);
++ ext3_ext_fiemap_cb, &fiemap_i);
+ mutex_unlock(&EXT3_I(inode)->truncate_mutex);
+ if (err)
+ return err;
+/*
+ * linux/fs/ext3/fiemap.h
+ *
-+ * Copyright (C) 2007 Cluster File Systems, Inc
++ * Copyright 2008 Sun Microsystems, Inc.
+ *
+ * Author: Kalpak Shah <kalpak@clusterfs.com>
+ */