-Index: linux-2.4.24/fs/ext3/extents.c
+Index: linux-2.4.20-8/fs/ext3/extents.c
===================================================================
---- linux-2.4.24.orig/fs/ext3/extents.c 2003-01-30 13:24:37.000000000 +0300
-+++ linux-2.4.24/fs/ext3/extents.c 2004-02-06 10:18:42.000000000 +0300
+--- linux-2.4.20-8.orig/fs/ext3/extents.c 2003-01-30 18:24:37.000000000 +0800
++++ linux-2.4.20-8/fs/ext3/extents.c 2004-04-14 19:47:13.000000000 +0800
@@ -0,0 +1,2347 @@
+/*
+ * Copyright (C) 2003 Alex Tomas <alex@clusterfs.com>
+EXPORT_SYMBOL(ext3_ext_find_goal);
+EXPORT_SYMBOL(ext3_ext_calc_credits_for_insert);
+
-Index: linux-2.4.24/fs/ext3/ialloc.c
+Index: linux-2.4.20-8/fs/ext3/ialloc.c
===================================================================
---- linux-2.4.24.orig/fs/ext3/ialloc.c 2004-01-14 02:58:45.000000000 +0300
-+++ linux-2.4.24/fs/ext3/ialloc.c 2004-01-26 23:17:19.000000000 +0300
-@@ -592,11 +592,13 @@
- iloc.bh = NULL;
- goto fail;
- }
+--- linux-2.4.20-8.orig/fs/ext3/ialloc.c 2004-04-14 18:42:03.000000000 +0800
++++ linux-2.4.20-8/fs/ext3/ialloc.c 2004-04-14 19:49:07.000000000 +0800
+@@ -593,10 +593,13 @@
+ iloc.bh = NULL;
+ goto fail;
+ }
+ if (test_opt(sb, EXTENTS)) {
+ EXT3_I(inode)->i_flags |= EXT3_EXTENTS_FL;
+ ext3_extents_initialize_blockmap(handle, inode);
+ }
- err = ext3_mark_iloc_dirty(handle, inode, &iloc);
- if (err) goto fail;
-
++
+ err = ext3_mark_iloc_dirty(handle, inode, &iloc);
+ if (err) goto fail;
-
--
+-
+
unlock_super (sb);
if(DQUOT_ALLOC_INODE(inode)) {
- DQUOT_DROP(inode);
-Index: linux-2.4.24/fs/ext3/inode.c
+Index: linux-2.4.20-8/fs/ext3/inode.c
===================================================================
---- linux-2.4.24.orig/fs/ext3/inode.c 2004-01-14 02:58:45.000000000 +0300
-+++ linux-2.4.24/fs/ext3/inode.c 2004-01-26 23:17:19.000000000 +0300
+--- linux-2.4.20-8.orig/fs/ext3/inode.c 2004-04-14 18:42:03.000000000 +0800
++++ linux-2.4.20-8/fs/ext3/inode.c 2004-04-14 19:47:13.000000000 +0800
@@ -848,6 +848,15 @@
goto reread;
}
handle = start_transaction(inode);
if (IS_ERR(handle))
return; /* AKPM: return what? */
-@@ -2536,6 +2548,9 @@
+@@ -2537,6 +2549,9 @@
int indirects = (EXT3_NDIR_BLOCKS % bpp) ? 5 : 3;
int ret;
if (ext3_should_journal_data(inode))
ret = 3 * (bpp + indirects) + 2;
else
-@@ -2972,7 +2987,7 @@
+@@ -2973,7 +2988,7 @@
/* alloc blocks one by one */
for (i = 0; i < nblocks; i++) {
&bh_tmp, 1);
if (ret)
break;
-@@ -3048,7 +3063,7 @@
+@@ -3049,7 +3064,7 @@
if (blocks[i] != 0)
continue;
if (rc) {
printk(KERN_INFO "ext3_map_inode_page: error %d "
"allocating block %ld\n", rc, iblock);
-Index: linux-2.4.24/fs/ext3/Makefile
+Index: linux-2.4.20-8/fs/ext3/Makefile
===================================================================
---- linux-2.4.24.orig/fs/ext3/Makefile 2004-01-14 02:58:45.000000000 +0300
-+++ linux-2.4.24/fs/ext3/Makefile 2004-02-05 18:44:25.000000000 +0300
+--- linux-2.4.20-8.orig/fs/ext3/Makefile 2004-04-14 18:42:03.000000000 +0800
++++ linux-2.4.20-8/fs/ext3/Makefile 2004-04-14 19:47:13.000000000 +0800
@@ -13,7 +13,9 @@
obj-y := balloc.o bitmap.o dir.o file.o fsync.o ialloc.o inode.o iopen.o \
obj-m := $(O_TARGET)
export-objs += xattr.o
-Index: linux-2.4.24/fs/ext3/super.c
+Index: linux-2.4.20-8/fs/ext3/super.c
===================================================================
---- linux-2.4.24.orig/fs/ext3/super.c 2004-01-14 02:58:45.000000000 +0300
-+++ linux-2.4.24/fs/ext3/super.c 2004-01-26 23:17:19.000000000 +0300
-@@ -530,6 +530,7 @@
+--- linux-2.4.20-8.orig/fs/ext3/super.c 2004-04-14 18:42:03.000000000 +0800
++++ linux-2.4.20-8/fs/ext3/super.c 2004-04-14 19:47:13.000000000 +0800
+@@ -623,6 +623,7 @@
int i;
J_ASSERT(sbi->s_delete_inodes == 0);
ext3_xattr_put_super(sb);
journal_destroy(sbi->s_journal);
if (!(sb->s_flags & MS_RDONLY)) {
-@@ -702,6 +703,10 @@
+@@ -796,6 +797,10 @@
return 0;
}
}
else if (!strcmp (this_char, "grpid") ||
!strcmp (this_char, "bsdgroups"))
set_opt (*mount_options, GRPID);
-@@ -1392,6 +1397,8 @@
+@@ -1486,6 +1491,8 @@
test_opt(sb,DATA_FLAGS) == EXT3_MOUNT_ORDERED_DATA ? "ordered":
"writeback");
return sb;
failed_mount3:
-Index: linux-2.4.24/fs/ext3/ioctl.c
+Index: linux-2.4.20-8/fs/ext3/ioctl.c
===================================================================
---- linux-2.4.24.orig/fs/ext3/ioctl.c 2004-01-14 02:58:42.000000000 +0300
-+++ linux-2.4.24/fs/ext3/ioctl.c 2004-01-26 23:17:19.000000000 +0300
-@@ -174,6 +174,10 @@
+--- linux-2.4.20-8.orig/fs/ext3/ioctl.c 2004-04-14 18:42:01.000000000 +0800
++++ linux-2.4.20-8/fs/ext3/ioctl.c 2004-04-14 19:47:13.000000000 +0800
+@@ -189,6 +189,10 @@
return ret;
}
#endif
default:
return -ENOTTY;
}
-Index: linux-2.4.24/include/linux/ext3_fs.h
+Index: linux-2.4.20-8/include/linux/ext3_fs.h
===================================================================
---- linux-2.4.24.orig/include/linux/ext3_fs.h 2004-01-14 02:58:45.000000000 +0300
-+++ linux-2.4.24/include/linux/ext3_fs.h 2004-01-30 00:09:37.000000000 +0300
+--- linux-2.4.20-8.orig/include/linux/ext3_fs.h 2004-04-14 18:42:03.000000000 +0800
++++ linux-2.4.20-8/include/linux/ext3_fs.h 2004-04-14 19:47:13.000000000 +0800
@@ -184,6 +184,7 @@
#define EXT3_IMAGIC_FL 0x00002000 /* AFS directory */
#define EXT3_JOURNAL_DATA_FL 0x00004000 /* file data should be journaled */
/* Compatibility, for having both ext2_fs.h and ext3_fs.h included at once */
#ifndef _LINUX_EXT2_FS_H
-@@ -688,6 +694,7 @@
+@@ -687,6 +693,7 @@
extern unsigned long ext3_count_free (struct buffer_head *, unsigned);
/* inode.c */
extern int ext3_forget(handle_t *, int, struct inode *, struct buffer_head *, int);
extern struct buffer_head * ext3_getblk (handle_t *, struct inode *, long, int, int *);
extern struct buffer_head * ext3_bread (handle_t *, struct inode *, int, int, int *);
-@@ -769,6 +776,14 @@
+@@ -767,6 +774,14 @@
extern struct inode_operations ext3_symlink_inode_operations;
extern struct inode_operations ext3_fast_symlink_inode_operations;
#endif /* __KERNEL__ */
-Index: linux-2.4.24/include/linux/ext3_extents.h
+Index: linux-2.4.20-8/include/linux/ext3_extents.h
===================================================================
---- linux-2.4.24.orig/include/linux/ext3_extents.h 2003-01-30 13:24:37.000000000 +0300
-+++ linux-2.4.24/include/linux/ext3_extents.h 2004-02-05 20:31:08.000000000 +0300
+--- linux-2.4.20-8.orig/include/linux/ext3_extents.h 2003-01-30 18:24:37.000000000 +0800
++++ linux-2.4.20-8/include/linux/ext3_extents.h 2004-04-14 19:47:13.000000000 +0800
@@ -0,0 +1,216 @@
+/*
+ * Copyright (C) 2003 Alex Tomas <alex@clusterfs.com>
+
+#endif /* _LINUX_EXT3_EXTENTS */
+
-Index: linux-2.4.24/include/linux/ext3_fs_i.h
+Index: linux-2.4.20-8/include/linux/ext3_fs_i.h
===================================================================
---- linux-2.4.24.orig/include/linux/ext3_fs_i.h 2004-01-24 19:30:22.000000000 +0300
-+++ linux-2.4.24/include/linux/ext3_fs_i.h 2004-01-26 23:17:19.000000000 +0300
+--- linux-2.4.20-8.orig/include/linux/ext3_fs_i.h 2004-04-14 18:42:03.000000000 +0800
++++ linux-2.4.20-8/include/linux/ext3_fs_i.h 2004-04-14 19:47:13.000000000 +0800
@@ -76,6 +76,8 @@
* by other means, so we have truncate_sem.
*/