The following commit has been merged in the master branch:
commit d75312aca432188f10de04b4cfad1605daf78125
Author: Patrick Winnertz <win...@debian.org>
Date:   Thu Aug 13 10:42:16 2009 +0200

    Rediffed two ldiskfs patches for kernel 2.6.18 as they fail
    to apply on vanilla and debian kernel
    
    Signed-off-by: Patrick Winnertz <win...@debian.org>

diff --git a/debian/patches/00list b/debian/patches/00list
index 42d06a9..a598179 100644
--- a/debian/patches/00list
+++ b/debian/patches/00list
@@ -27,4 +27,6 @@ libcfs_wrong_includepath.dpatch
 lnet-missing-prototypes.dpatch
 version_tag-pl-path.dpatch
 fix_typecasts_in_printf.dpatch
+#patches for kernel patches (hotfix for 1.8.1)
 rediffed_2.6.18-kernel_patches.dpatch
+ldiskfs_2.6.18-hotfixes.dpatch
diff --git a/debian/patches/ldiskfs_2.6.18-hotfixes.dpatch 
b/debian/patches/ldiskfs_2.6.18-hotfixes.dpatch
new file mode 100755
index 0000000..e9ff386
--- /dev/null
+++ b/debian/patches/ldiskfs_2.6.18-hotfixes.dpatch
@@ -0,0 +1,662 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## autogen.dpatch by Patrick Winnertz <win...@debian.org>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: rediffed two patches as they don't apply against 2.6.18 (debian and 
vanilla)
+
+...@dpatch@
+diff --git a/ldiskfs/kernel_patches/patches/ext3-extents-2.6.18-vanilla.patch 
b/ldiskfs/kernel_patches/patches/ext3-extents-2.6.18-vanilla.patch
+index 27cfe46..d50e459 100644
+--- a/ldiskfs/kernel_patches/patches/ext3-extents-2.6.18-vanilla.patch
++++ b/ldiskfs/kernel_patches/patches/ext3-extents-2.6.18-vanilla.patch
+@@ -1,8 +1,8 @@
+-Index: linux-2.6.18.8/fs/ext3/dir.c
++Index: linux-source-2.6.18/fs/ext3/dir.c
+ ===================================================================
+---- linux-2.6.18.8.orig/fs/ext3/dir.c 2007-02-24 00:52:30.000000000 +0100
+-+++ linux-2.6.18.8/fs/ext3/dir.c      2007-07-17 09:18:14.000000000 +0200
+-@@ -131,8 +131,7 @@ static int ext3_readdir(struct file * fi
++--- linux-source-2.6.18.orig/fs/ext3/dir.c    2009-05-05 01:40:47.000000000 
+0200
+++++ linux-source-2.6.18/fs/ext3/dir.c 2009-08-13 10:33:12.000000000 +0200
++@@ -132,8 +132,7 @@
+               struct buffer_head *bh = NULL;
+  
+               map_bh.b_state = 0;
+@@ -12,10 +12,10 @@ Index: linux-2.6.18.8/fs/ext3/dir.c
+               if (err > 0) {
+                       page_cache_readahead(sb->s_bdev->bd_inode->i_mapping,
+                               &filp->f_ra,
+-Index: linux-2.6.18.8/fs/ext3/extents.c
++Index: linux-source-2.6.18/fs/ext3/extents.c
+ ===================================================================
+ --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+-+++ linux-2.6.18.8/fs/ext3/extents.c  2007-07-17 11:08:59.000000000 +0200
+++++ linux-source-2.6.18/fs/ext3/extents.c     2009-08-13 10:33:12.000000000 
+0200
+ @@ -0,0 +1,2276 @@
+ +/*
+ + * Copyright 2008, Sun Microsystems, Inc.
+@@ -2293,11 +2293,11 @@ Index: linux-2.6.18.8/fs/ext3/extents.c
+ +EXPORT_SYMBOL(ext3_ext_walk_space);
+ +EXPORT_SYMBOL(ext3_ext_find_goal);
+ +EXPORT_SYMBOL(ext3_ext_calc_credits_for_insert);
+-Index: linux-2.6.18.8/fs/ext3/ialloc.c
++Index: linux-source-2.6.18/fs/ext3/ialloc.c
+ ===================================================================
+---- linux-2.6.18.8.orig/fs/ext3/ialloc.c      2007-07-17 09:18:09.000000000 
+0200
+-+++ linux-2.6.18.8/fs/ext3/ialloc.c   2007-07-17 11:08:09.000000000 +0200
+-@@ -652,6 +652,17 @@ got:
++--- linux-source-2.6.18.orig/fs/ext3/ialloc.c 2009-08-13 10:32:52.000000000 
+0200
+++++ linux-source-2.6.18/fs/ext3/ialloc.c      2009-08-13 10:33:12.000000000 
+0200
++@@ -652,6 +652,17 @@
+               ext3_std_error(sb, err);
+               goto fail_free_drop;
+       }
+@@ -2315,10 +2315,10 @@ Index: linux-2.6.18.8/fs/ext3/ialloc.c
+  
+       ext3_debug("allocating inode %lu\n", inode->i_ino);
+       goto really_out;
+-Index: linux-2.6.18.8/fs/ext3/inode.c
++Index: linux-source-2.6.18/fs/ext3/inode.c
+ ===================================================================
+---- linux-2.6.18.8.orig/fs/ext3/inode.c       2007-07-17 09:18:12.000000000 
+0200
+-+++ linux-2.6.18.8/fs/ext3/inode.c    2007-07-17 11:08:11.000000000 +0200
++--- linux-source-2.6.18.orig/fs/ext3/inode.c  2009-08-13 10:32:52.000000000 
+0200
+++++ linux-source-2.6.18/fs/ext3/inode.c       2009-08-13 10:33:12.000000000 
+0200
+ @@ -40,8 +40,6 @@
+  #include "iopen.h"
+  #include "acl.h"
+@@ -2328,7 +2328,7 @@ Index: linux-2.6.18.8/fs/ext3/inode.c
+  /*
+   * Test whether an inode is a fast symlink.
+   */
+-@@ -804,6 +802,7 @@ int ext3_get_blocks_handle(handle_t *han
++@@ -804,6 +802,7 @@
+       ext3_fsblk_t first_block = 0;
+  
+  
+@@ -2336,22 +2336,7 @@ Index: linux-2.6.18.8/fs/ext3/inode.c
+       J_ASSERT(handle != NULL || create == 0);
+       depth = ext3_block_to_path(inode,iblock,offsets,&blocks_to_boundary);
+  
+-@@ -984,12 +983,10 @@ static int ext3_get_block(struct inode *
+-              started = 1;
+-      }
+- 
+--     ret = ext3_get_blocks_handle(handle, inode, iblock,
+-+     ret = ext3_get_blocks_wrap(handle, inode, iblock,
+-                                      max_blocks, bh_result, create, 0);
+--     if (ret > 0) {
+--             bh_result->b_size = (ret << inode->i_blkbits);
+-+     if (ret > 0)
+-              ret = 0;
+--     }
+-      if (started)
+-              ext3_journal_stop(handle);
+- out:
+-@@ -1008,7 +1005,7 @@ struct buffer_head *ext3_getblk(handle_t
++@@ -1008,7 +1007,7 @@
+       dummy.b_state = 0;
+       dummy.b_blocknr = -1000;
+       buffer_trace_init(&dummy.b_history);
+@@ -2360,7 +2345,7 @@ Index: linux-2.6.18.8/fs/ext3/inode.c
+                                       &dummy, create, 1);
+       /*
+        * ext3_get_blocks_handle() returns number of blocks
+-@@ -1759,7 +1756,7 @@ void ext3_set_aops(struct inode *inode)
++@@ -1759,7 +1758,7 @@
+   * This required during truncate. We need to physically zero the tail end
+   * of that block so it doesn't yield old data if the file is later grown.
+   */
+@@ -2369,7 +2354,7 @@ Index: linux-2.6.18.8/fs/ext3/inode.c
+               struct address_space *mapping, loff_t from)
+  {
+       ext3_fsblk_t index = from >> PAGE_CACHE_SHIFT;
+-@@ -2263,6 +2260,9 @@ void ext3_truncate(struct inode *inode)
++@@ -2263,6 +2262,9 @@
+                       return;
+       }
+  
+@@ -2379,7 +2364,7 @@ Index: linux-2.6.18.8/fs/ext3/inode.c
+       handle = start_transaction(inode);
+       if (IS_ERR(handle)) {
+               if (page) {
+-@@ -3008,12 +3008,15 @@ err_out:
++@@ -3008,12 +3010,15 @@
+   * block and work out the exact number of indirects which are touched.  Pah.
+   */
+  
+@@ -2396,7 +2381,7 @@ Index: linux-2.6.18.8/fs/ext3/inode.c
+       if (ext3_should_journal_data(inode))
+               ret = 3 * (bpp + indirects) + 2;
+       else
+-@@ -3260,7 +3263,7 @@ int ext3_map_inode_page(struct inode *in
++@@ -3260,7 +3265,7 @@
+               if (blocks[i] != 0)
+                       continue;
+  
+@@ -2405,10 +2390,10 @@ Index: linux-2.6.18.8/fs/ext3/inode.c
+               if (rc < 0) {
+                       printk(KERN_INFO "ext3_map_inode_page: error reading "
+                                       "block %ld\n", iblock);
+-Index: linux-2.6.18.8/fs/ext3/Makefile
++Index: linux-source-2.6.18/fs/ext3/Makefile
+ ===================================================================
+---- linux-2.6.18.8.orig/fs/ext3/Makefile      2007-07-17 09:18:11.000000000 
+0200
+-+++ linux-2.6.18.8/fs/ext3/Makefile   2007-07-17 11:08:11.000000000 +0200
++--- linux-source-2.6.18.orig/fs/ext3/Makefile 2009-08-13 10:32:52.000000000 
+0200
+++++ linux-source-2.6.18/fs/ext3/Makefile      2009-08-13 10:33:12.000000000 
+0200
+ @@ -5,7 +5,7 @@
+  obj-$(CONFIG_EXT3_FS) += ext3.o
+  
+@@ -2418,11 +2403,11 @@ Index: linux-2.6.18.8/fs/ext3/Makefile
+  
+  ext3-$(CONFIG_EXT3_FS_XATTR)  += xattr.o xattr_user.o xattr_trusted.o
+  ext3-$(CONFIG_EXT3_FS_POSIX_ACL) += acl.o
+-Index: linux-2.6.18.8/fs/ext3/super.c
++Index: linux-source-2.6.18/fs/ext3/super.c
+ ===================================================================
+---- linux-2.6.18.8.orig/fs/ext3/super.c       2007-07-17 09:18:12.000000000 
+0200
+-+++ linux-2.6.18.8/fs/ext3/super.c    2007-07-17 11:08:12.000000000 +0200
+-@@ -391,6 +391,7 @@ static void ext3_put_super (struct super
++--- linux-source-2.6.18.orig/fs/ext3/super.c  2009-08-13 10:32:52.000000000 
+0200
+++++ linux-source-2.6.18/fs/ext3/super.c       2009-08-13 10:33:12.000000000 
+0200
++@@ -391,6 +391,7 @@
+       struct ext3_super_block *es = sbi->s_es;
+       int i;
+  
+@@ -2430,7 +2415,7 @@ Index: linux-2.6.18.8/fs/ext3/super.c
+       ext3_xattr_put_super(sb);
+       journal_destroy(sbi->s_journal);
+       if (!(sb->s_flags & MS_RDONLY)) {
+-@@ -455,6 +456,8 @@ static struct inode *ext3_alloc_inode(st
++@@ -455,6 +456,8 @@
+  #endif
+       ei->i_block_alloc_info = NULL;
+       ei->vfs_inode.i_version = 1;
+@@ -2439,7 +2424,7 @@ Index: linux-2.6.18.8/fs/ext3/super.c
+       return &ei->vfs_inode;
+  }
+  
+-@@ -680,7 +683,8 @@ enum {
++@@ -680,7 +683,8 @@
+       Opt_jqfmt_vfsold, Opt_jqfmt_vfsv0, Opt_quota, Opt_noquota,
+       Opt_ignore, Opt_barrier, Opt_err, Opt_resize, Opt_usrquota,
+       Opt_iopen, Opt_noiopen, Opt_iopen_nopriv,
+@@ -2449,7 +2434,7 @@ Index: linux-2.6.18.8/fs/ext3/super.c
+  };
+  
+  static match_table_t tokens = {
+-@@ -733,6 +737,9 @@ static match_table_t tokens = {
++@@ -733,6 +737,9 @@
+       {Opt_noiopen, "noiopen"},
+       {Opt_iopen_nopriv, "iopen_nopriv"},
+       {Opt_barrier, "barrier=%u"},
+@@ -2459,7 +2444,7 @@ Index: linux-2.6.18.8/fs/ext3/super.c
+       {Opt_err, NULL},
+       {Opt_resize, "resize"},
+  };
+-@@ -1077,6 +1084,15 @@ clear_qf_name:
++@@ -1077,6 +1084,15 @@
+               case Opt_bh:
+                       clear_opt(sbi->s_mount_opt, NOBH);
+                       break;
+@@ -2475,7 +2460,7 @@ Index: linux-2.6.18.8/fs/ext3/super.c
+               default:
+                       printk (KERN_ERR
+                               "EXT3-fs: Unrecognized mount option \"%s\" "
+-@@ -1806,6 +1822,8 @@ static int ext3_fill_super (struct super
++@@ -1802,6 +1818,8 @@
+               test_opt(sb,DATA_FLAGS) == EXT3_MOUNT_ORDERED_DATA ? "ordered":
+               "writeback");
+  
+@@ -2484,10 +2469,10 @@ Index: linux-2.6.18.8/fs/ext3/super.c
+       lock_kernel();
+       return 0;
+  
+-Index: linux-2.6.18.8/include/linux/ext3_extents.h
++Index: linux-source-2.6.18/include/linux/ext3_extents.h
+ ===================================================================
+ --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+-+++ linux-2.6.18.8/include/linux/ext3_extents.h       2007-07-17 
09:18:14.000000000 +0200
+++++ linux-source-2.6.18/include/linux/ext3_extents.h  2009-08-13 
10:33:12.000000000 +0200
+ @@ -0,0 +1,232 @@
+ +/*
+ + * Copyright 2008 Sun Microsystems, Inc.
+@@ -2721,11 +2706,11 @@ Index: linux-2.6.18.8/include/linux/ext3_extents.h
+ +
+ +#endif /* _LINUX_EXT3_EXTENTS */
+ +
+-Index: linux-2.6.18.8/include/linux/ext3_fs.h
++Index: linux-source-2.6.18/include/linux/ext3_fs.h
+ ===================================================================
+---- linux-2.6.18.8.orig/include/linux/ext3_fs.h       2007-07-17 
09:18:13.000000000 +0200
+-+++ linux-2.6.18.8/include/linux/ext3_fs.h    2007-07-17 11:08:12.000000000 
+0200
+-@@ -182,8 +182,9 @@ struct ext3_group_desc
++--- linux-source-2.6.18.orig/include/linux/ext3_fs.h  2009-08-13 
10:32:52.000000000 +0200
+++++ linux-source-2.6.18/include/linux/ext3_fs.h       2009-08-13 
10:33:12.000000000 +0200
++@@ -182,8 +182,9 @@
+  #define EXT3_DIRSYNC_FL                      0x00010000 /* dirsync behaviour 
(directories only) */
+  #define EXT3_TOPDIR_FL                       0x00020000 /* Top of directory 
hierarchies*/
+  #define EXT3_RESERVED_FL             0x80000000 /* reserved for ext3 lib */
+@@ -2736,7 +2721,7 @@ Index: linux-2.6.18.8/include/linux/ext3_fs.h
+  #define EXT3_FL_USER_MODIFIABLE              0x000380FF /* User modifiable 
flags */
+  
+  /*
+-@@ -373,6 +374,8 @@ struct ext3_inode {
++@@ -373,6 +374,8 @@
+  #define EXT3_MOUNT_GRPQUOTA          0x200000 /* "old" group quota */
+  #define EXT3_MOUNT_IOPEN             0x400000        /* Allow access via 
iopen */
+  #define EXT3_MOUNT_IOPEN_NOPRIV              0x800000/* Make iopen 
world-readable */
+@@ -2745,7 +2730,7 @@ Index: linux-2.6.18.8/include/linux/ext3_fs.h
+  
+  /* Compatibility, for having both ext2_fs.h and ext3_fs.h included at once */
+  #ifndef clear_opt
+-@@ -572,11 +575,13 @@ static inline int ext3_valid_inum(struct
++@@ -572,11 +575,13 @@
+  #define EXT3_FEATURE_INCOMPAT_RECOVER                0x0004 /* Needs 
recovery */
+  #define EXT3_FEATURE_INCOMPAT_JOURNAL_DEV    0x0008 /* Journal device */
+  #define EXT3_FEATURE_INCOMPAT_META_BG                0x0010
+@@ -2760,7 +2745,7 @@ Index: linux-2.6.18.8/include/linux/ext3_fs.h
+  #define EXT3_FEATURE_RO_COMPAT_SUPP  (EXT3_FEATURE_RO_COMPAT_SPARSE_SUPER| \
+                                        EXT3_FEATURE_RO_COMPAT_LARGE_FILE| \
+                                        EXT3_FEATURE_RO_COMPAT_BTREE_DIR)
+-@@ -816,6 +821,9 @@ extern int ext3_get_inode_loc(struct ino
++@@ -816,6 +821,9 @@
+  extern void ext3_truncate (struct inode *);
+  extern void ext3_set_inode_flags(struct inode *);
+  extern void ext3_set_aops(struct inode *inode);
+@@ -2770,7 +2755,7 @@ Index: linux-2.6.18.8/include/linux/ext3_fs.h
+  
+  /* ioctl.c */
+  extern int ext3_ioctl (struct inode *, struct file *, unsigned int,
+-@@ -869,6 +877,30 @@ extern struct inode_operations ext3_spec
++@@ -869,6 +877,30 @@
+  extern struct inode_operations ext3_symlink_inode_operations;
+  extern struct inode_operations ext3_fast_symlink_inode_operations;
+  
+@@ -2801,11 +2786,11 @@ Index: linux-2.6.18.8/include/linux/ext3_fs.h
+  
+  #endif       /* __KERNEL__ */
+  
+-Index: linux-2.6.18.8/include/linux/ext3_fs_i.h
++Index: linux-source-2.6.18/include/linux/ext3_fs_i.h
+ ===================================================================
+---- linux-2.6.18.8.orig/include/linux/ext3_fs_i.h     2007-02-24 
00:52:30.000000000 +0100
+-+++ linux-2.6.18.8/include/linux/ext3_fs_i.h  2007-07-17 11:08:11.000000000 
+0200
+-@@ -65,6 +65,16 @@ struct ext3_block_alloc_info {
++--- linux-source-2.6.18.orig/include/linux/ext3_fs_i.h        2006-09-20 
05:42:06.000000000 +0200
+++++ linux-source-2.6.18/include/linux/ext3_fs_i.h     2009-08-13 
10:33:12.000000000 +0200
++@@ -65,6 +65,16 @@
+  #define rsv_end rsv_window._rsv_end
+  
+  /*
+@@ -2822,7 +2807,7 @@ Index: linux-2.6.18.8/include/linux/ext3_fs_i.h
+   * third extended file system inode data in memory
+   */
+  struct ext3_inode_info {
+-@@ -142,6 +152,8 @@ struct ext3_inode_info {
++@@ -142,6 +152,8 @@
+        */
+       struct mutex truncate_mutex;
+       struct inode vfs_inode;
+@@ -2831,11 +2816,11 @@ Index: linux-2.6.18.8/include/linux/ext3_fs_i.h
+  };
+  
+  #endif       /* _LINUX_EXT3_FS_I */
+-Index: linux-2.6.18.8/include/linux/ext3_fs_sb.h
++Index: linux-source-2.6.18/include/linux/ext3_fs_sb.h
+ ===================================================================
+---- linux-2.6.18.8.orig/include/linux/ext3_fs_sb.h    2007-02-24 
00:52:30.000000000 +0100
+-+++ linux-2.6.18.8/include/linux/ext3_fs_sb.h 2007-07-17 11:08:12.000000000 
+0200
+-@@ -78,6 +78,16 @@ struct ext3_sb_info {
++--- linux-source-2.6.18.orig/include/linux/ext3_fs_sb.h       2006-09-20 
05:42:06.000000000 +0200
+++++ linux-source-2.6.18/include/linux/ext3_fs_sb.h    2009-08-13 
10:33:12.000000000 +0200
++@@ -78,6 +78,16 @@
+       char *s_qf_names[MAXQUOTAS];            /* Names of quota files with 
journalled quota */
+       int s_jquota_fmt;                       /* Format of quota to use */
+  #endif
+@@ -2852,10 +2837,10 @@ Index: linux-2.6.18.8/include/linux/ext3_fs_sb.h
+  };
+  
+  #endif       /* _LINUX_EXT3_FS_SB */
+-Index: linux-2.6.18.8/include/linux/ext3_jbd.h
++Index: linux-source-2.6.18/include/linux/ext3_jbd.h
+ ===================================================================
+---- linux-2.6.18.8.orig/include/linux/ext3_jbd.h      2007-02-24 
00:52:30.000000000 +0100
+-+++ linux-2.6.18.8/include/linux/ext3_jbd.h   2007-07-17 09:18:14.000000000 
+0200
++--- linux-source-2.6.18.orig/include/linux/ext3_jbd.h 2006-09-20 
05:42:06.000000000 +0200
+++++ linux-source-2.6.18/include/linux/ext3_jbd.h      2009-08-13 
10:33:12.000000000 +0200
+ @@ -23,12 +23,20 @@
+  
+  /* Define the number of blocks we need to account to a transaction to
+diff --git a/ldiskfs/kernel_patches/patches/ext3-uninit-2.6.18.patch 
b/ldiskfs/kernel_patches/patches/ext3-uninit-2.6.18.patch
+index 88dc179..99423d3 100644
+--- a/ldiskfs/kernel_patches/patches/ext3-uninit-2.6.18.patch
++++ b/ldiskfs/kernel_patches/patches/ext3-uninit-2.6.18.patch
+@@ -6,11 +6,11 @@ group descriptor to avoid reading or scanning them at e2fsck 
time.
+ A checksum of each group descriptor is used to ensure that corruption in
+ the group descriptor's bit flags does not cause incorrect operation.
+ 
+-Index: linux-2.6.18-53.1.14/include/linux/ext3_fs.h
++Index: linux-source-2.6.18/include/linux/ext3_fs.h
+ ===================================================================
+---- linux-2.6.18-53.1.14.orig/include/linux/ext3_fs.h
+-+++ linux-2.6.18-53.1.14/include/linux/ext3_fs.h
+-@@ -150,16 +150,22 @@ struct ext3_allocation_request {
++--- linux-source-2.6.18.orig/include/linux/ext3_fs.h  2009-08-13 
10:36:02.000000000 +0200
+++++ linux-source-2.6.18/include/linux/ext3_fs.h       2009-08-13 
10:36:33.000000000 +0200
++@@ -151,16 +151,22 @@
+   */
+  struct ext3_group_desc
+  {
+@@ -37,7 +37,7 @@ Index: linux-2.6.18-53.1.14/include/linux/ext3_fs.h
+  /*
+   * Macro-instructions used to manage group descriptors
+   */
+-@@ -603,6 +609,7 @@ static inline int ext3_valid_inum(struct
++@@ -604,6 +610,7 @@
+  #define EXT3_FEATURE_RO_COMPAT_SPARSE_SUPER  0x0001
+  #define EXT3_FEATURE_RO_COMPAT_LARGE_FILE    0x0002
+  #define EXT3_FEATURE_RO_COMPAT_BTREE_DIR     0x0004
+@@ -45,7 +45,7 @@ Index: linux-2.6.18-53.1.14/include/linux/ext3_fs.h
+  #define EXT4_FEATURE_RO_COMPAT_DIR_NLINK     0x0020
+  
+  #define EXT3_FEATURE_INCOMPAT_COMPRESSION    0x0001
+-@@ -619,6 +626,7 @@ static inline int ext3_valid_inum(struct
++@@ -620,6 +627,7 @@
+                                        EXT3_FEATURE_INCOMPAT_EXTENTS)
+  #define EXT3_FEATURE_RO_COMPAT_SUPP  (EXT3_FEATURE_RO_COMPAT_SPARSE_SUPER| \
+                                        EXT3_FEATURE_RO_COMPAT_LARGE_FILE| \
+@@ -53,10 +53,10 @@ Index: linux-2.6.18-53.1.14/include/linux/ext3_fs.h
+                                        EXT4_FEATURE_RO_COMPAT_DIR_NLINK| \
+                                        EXT3_FEATURE_RO_COMPAT_BTREE_DIR)
+  
+-Index: linux-2.6.18-53.1.14/fs/ext3/resize.c
++Index: linux-source-2.6.18/fs/ext3/resize.c
+ ===================================================================
+---- linux-2.6.18-53.1.14.orig/fs/ext3/resize.c
+-+++ linux-2.6.18-53.1.14/fs/ext3/resize.c
++--- linux-source-2.6.18.orig/fs/ext3/resize.c 2009-08-13 10:36:03.000000000 
+0200
+++++ linux-source-2.6.18/fs/ext3/resize.c      2009-08-13 10:37:36.000000000 
+0200
+ @@ -18,6 +18,7 @@
+  #include <linux/errno.h>
+  #include <linux/slab.h>
+@@ -65,7 +65,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/resize.c
+  
+  #define outside(b, first, last)      ((b) < (first) || (b) >= (last))
+  #define inside(b, first, last)       ((b) >= (first) && (b) < (last))
+-@@ -137,25 +138,6 @@ static struct buffer_head *bclean(handle
++@@ -137,25 +138,6 @@
+  }
+  
+  /*
+@@ -88,10 +88,10 @@ Index: linux-2.6.18-53.1.14/fs/ext3/resize.c
+ -}
+ -
+ -/*
+-  * If we have fewer than thresh credits, extend by EXT3_MAX_TRANS_DATA.
+-  * If that fails, restart the transaction & regain write access for the
+-  * buffer head which is used for block_bitmap modifications.
+-@@ -834,6 +816,7 @@ int ext3_group_add(struct super_block *s
++  * Set up the block and inode bitmaps, and the inode table for the new group.
++  * This doesn't need to be part of the main transaction, since we are only
++  * changing blocks outside the actual filesystem.  We still do journaling to
++@@ -834,6 +816,7 @@
+       gdp->bg_inode_table = cpu_to_le32(input->inode_table);
+       gdp->bg_free_blocks_count = cpu_to_le16(input->free_blocks_count);
+       gdp->bg_free_inodes_count = cpu_to_le16(EXT3_INODES_PER_GROUP(sb));
+@@ -99,10 +99,10 @@ Index: linux-2.6.18-53.1.14/fs/ext3/resize.c
+  
+       /*
+        * Make the new blocks and inodes valid next.  We do this before
+-Index: linux-2.6.18-53.1.14/fs/ext3/super.c
++Index: linux-source-2.6.18/fs/ext3/super.c
+ ===================================================================
+---- linux-2.6.18-53.1.14.orig/fs/ext3/super.c
+-+++ linux-2.6.18-53.1.14/fs/ext3/super.c
++--- linux-source-2.6.18.orig/fs/ext3/super.c  2009-08-13 10:36:03.000000000 
+0200
+++++ linux-source-2.6.18/fs/ext3/super.c       2009-08-13 10:36:33.000000000 
+0200
+ @@ -41,6 +41,7 @@
+  #include "xattr.h"
+  #include "acl.h"
+@@ -111,7 +111,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/super.c
+  
+  static int ext3_load_journal(struct super_block *, struct ext3_super_block *,
+                            unsigned long journal_devnum);
+-@@ -1227,6 +1228,91 @@ static int ext3_setup_super(struct super
++@@ -1229,6 +1230,91 @@
+       return res;
+  }
+  
+@@ -203,7 +203,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/super.c
+  /* Called at mount-time, super-block is locked */
+  static int ext3_check_descriptors (struct super_block * sb)
+  {
+-@@ -1281,6 +1367,13 @@ static int ext3_check_descriptors (struc
++@@ -1283,6 +1369,13 @@
+                                       le32_to_cpu(gdp->bg_inode_table));
+                       return 0;
+               }
+@@ -217,10 +217,10 @@ Index: linux-2.6.18-53.1.14/fs/ext3/super.c
+               first_block += EXT3_BLOCKS_PER_GROUP(sb);
+               gdp++;
+       }
+-Index: linux-2.6.18-53.1.14/fs/ext3/group.h
++Index: linux-source-2.6.18/fs/ext3/group.h
+ ===================================================================
+---- /dev/null
+-+++ linux-2.6.18-53.1.14/fs/ext3/group.h
++--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++++ linux-source-2.6.18/fs/ext3/group.h       2009-08-13 10:36:33.000000000 
+0200
+ @@ -0,0 +1,30 @@
+ +/*
+ + *  linux/fs/ext3/group.h
+@@ -252,10 +252,10 @@ Index: linux-2.6.18-53.1.14/fs/ext3/group.h
+ +                                    struct ext3_group_desc *desc);
+ +extern void mark_bitmap_end(int start_bit, int end_bit, char *bitmap);
+ +#endif /* _LINUX_EXT3_GROUP_H */
+-Index: linux-2.6.18-53.1.14/fs/ext3/ialloc.c
++Index: linux-source-2.6.18/fs/ext3/ialloc.c
+ ===================================================================
+---- linux-2.6.18-53.1.14.orig/fs/ext3/ialloc.c
+-+++ linux-2.6.18-53.1.14/fs/ext3/ialloc.c
++--- linux-source-2.6.18.orig/fs/ext3/ialloc.c 2009-08-13 10:36:03.000000000 
+0200
+++++ linux-source-2.6.18/fs/ext3/ialloc.c      2009-08-13 10:36:33.000000000 
+0200
+ @@ -28,6 +28,7 @@
+  
+  #include "xattr.h"
+@@ -317,7 +317,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/ialloc.c
+  
+  /*
+   * Read the inode allocation bitmap for a given block_group, reading
+-@@ -59,8 +106,19 @@ read_inode_bitmap(struct super_block * s
++@@ -59,8 +106,19 @@
+       desc = ext3_get_group_desc(sb, block_group, NULL);
+       if (!desc)
+               goto error_out;
+@@ -339,7 +339,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/ialloc.c
+       if (!bh)
+               ext3_error(sb, "read_inode_bitmap",
+                           "Cannot read inode bitmap - "
+-@@ -169,6 +227,8 @@ void ext3_free_inode (handle_t *handle, 
++@@ -169,6 +227,8 @@
+                       if (is_directory)
+                               gdp->bg_used_dirs_count = cpu_to_le16(
+                                 le16_to_cpu(gdp->bg_used_dirs_count) - 1);
+@@ -348,7 +348,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/ialloc.c
+                       spin_unlock(sb_bgl_lock(sbi, block_group));
+                       percpu_counter_inc(&sbi->s_freeinodes_counter);
+                       if (is_directory)
+-@@ -454,7 +514,7 @@ struct inode *ext3_new_inode(handle_t *h
++@@ -454,7 +514,7 @@
+       struct ext3_sb_info *sbi;
+       int err = 0;
+       struct inode *ret;
+@@ -357,7 +357,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/ialloc.c
+  
+       /* Cannot create files in a deleted directory */
+       if (!dir || !dir->i_nlink)
+-@@ -571,11 +631,13 @@ repeat_in_this_group:
++@@ -571,11 +631,13 @@
+       goto out;
+  
+  got:
+@@ -376,7 +376,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/ialloc.c
+               err = -EIO;
+               goto fail;
+       }
+-@@ -583,13 +645,64 @@ got:
++@@ -583,13 +645,64 @@
+       BUFFER_TRACE(bh2, "get_write_access");
+       err = ext3_journal_get_write_access(handle, bh2);
+       if (err) goto fail;
+@@ -441,19 +441,19 @@ Index: linux-2.6.18-53.1.14/fs/ext3/ialloc.c
+       spin_unlock(sb_bgl_lock(sbi, group));
+       BUFFER_TRACE(bh2, "call ext3_journal_dirty_metadata");
+       err = ext3_journal_dirty_metadata(handle, bh2);
+-@@ -611,7 +724,7 @@ got:
++@@ -611,7 +724,7 @@
+               inode->i_gid = current->fsgid;
+       inode->i_mode = mode;
+  
+ -     inode->i_ino = ino;
+ +     inode->i_ino = ino + group * EXT3_INODES_PER_GROUP(sb);
+       /* This is the optimal IO size (for stat), not the fs block size */
++      inode->i_blksize = PAGE_SIZE;
+       inode->i_blocks = 0;
+-      inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME_SEC;
+-Index: linux-2.6.18-53.1.14/fs/ext3/mballoc.c
++Index: linux-source-2.6.18/fs/ext3/mballoc.c
+ ===================================================================
+---- linux-2.6.18-53.1.14.orig/fs/ext3/mballoc.c
+-+++ linux-2.6.18-53.1.14/fs/ext3/mballoc.c
++--- linux-source-2.6.18.orig/fs/ext3/mballoc.c        2009-08-13 
10:36:02.000000000 +0200
+++++ linux-source-2.6.18/fs/ext3/mballoc.c     2009-08-13 10:36:33.000000000 
+0200
+ @@ -36,6 +36,8 @@
+  #include <linux/seq_file.h>
+  #include <linux/version.h>
+@@ -463,7 +463,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/mballoc.c
+  /*
+   * MUSTDO:
+   *   - test ext3_ext_search_left() and ext3_ext_search_right()
+-@@ -323,6 +325,7 @@ struct ext3_group_info {
++@@ -323,6 +325,7 @@
+       unsigned long   bb_state;
+       unsigned long   bb_tid;
+       struct ext3_free_metadata *bb_md_cur;
+@@ -471,7 +471,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/mballoc.c
+       unsigned short  bb_first_free;
+       unsigned short  bb_free;
+       unsigned short  bb_fragments;
+-@@ -941,10 +944,7 @@ static int ext3_mb_init_cache(struct pag
++@@ -951,10 +954,7 @@
+               if (first_group + i >= EXT3_SB(sb)->s_groups_count)
+                       break;
+  
+@@ -483,7 +483,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/mballoc.c
+  
+               err = -ENOMEM;
+               bh[i] = sb_getblk(sb, le32_to_cpu(desc->bg_block_bitmap));
+-@@ -959,7 +959,12 @@ static int ext3_mb_init_cache(struct pag
++@@ -969,7 +969,12 @@
+                       unlock_buffer(bh[i]);
+                       continue;
+               }
+@@ -497,7 +497,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/mballoc.c
+               get_bh(bh[i]);
+               bh[i]->b_end_io = end_buffer_read_sync;
+               submit_bh(READ, bh[i]);
+-@@ -1731,6 +1736,10 @@ static int ext3_mb_good_group(struct ext
++@@ -1763,6 +1768,10 @@
+       switch (cr) {
+               case 0:
+                       BUG_ON(ac->ac_2order == 0);
+@@ -508,7 +508,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/mballoc.c
+                       bits = ac->ac_sb->s_blocksize_bits + 1;
+                       for (i = ac->ac_2order; i <= bits; i++)
+                               if (grp->bb_counters[i] > 0)
+-@@ -1824,7 +1833,9 @@ repeat:
++@@ -1866,7 +1875,9 @@
+                       }
+  
+                       ac->ac_groups_scanned++;
+@@ -519,7 +519,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/mballoc.c
+                               ext3_mb_simple_scan_group(ac, &e3b);
+                       else if (cr == 1 && ac->ac_g_ex.fe_len == sbi->s_stripe)
+                               ext3_mb_scan_aligned(ac, &e3b);
+-@@ -2304,12 +2315,13 @@ int ext3_mb_init_backend(struct super_bl
++@@ -2362,12 +2373,13 @@
+                       i--;
+                       goto err_freebuddy;
+               }
+@@ -534,7 +534,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/mballoc.c
+               set_bit(EXT3_GROUP_INFO_NEED_INIT_BIT,
+                       &meta_group_info[j]->bb_state);
+  
+-@@ -2943,9 +2955,17 @@ int ext3_mb_mark_diskspace_used(struct e
++@@ -2974,9 +2986,17 @@
+       mb_set_bits(NULL, bitmap_bh->b_data,
+                   ac->ac_b_ex.fe_start, ac->ac_b_ex.fe_len);
+  
+@@ -551,19 +551,19 @@ Index: linux-2.6.18-53.1.14/fs/ext3/mballoc.c
+ +     gdp->bg_checksum = ext3_group_desc_csum(sbi, ac->ac_b_ex.fe_group, gdp);
+       spin_unlock(sb_bgl_lock(sbi, ac->ac_b_ex.fe_group));
+       percpu_counter_mod(&sbi->s_freeblocks_counter, - ac->ac_b_ex.fe_len);
+- 
+-@@ -4355,6 +4375,7 @@ do_more:
+-      spin_lock(sb_bgl_lock(sbi, block_group));
++      ext3_unlock_group(sb, ac->ac_b_ex.fe_group);
++@@ -4435,6 +4455,7 @@
++      mb_clear_bits(NULL, bitmap_bh->b_data, bit, count);
+       gdp->bg_free_blocks_count =
+               cpu_to_le16(le16_to_cpu(gdp->bg_free_blocks_count) + count);
+ +     gdp->bg_checksum = ext3_group_desc_csum(sbi, block_group, gdp);
+       spin_unlock(sb_bgl_lock(sbi, block_group));
+       percpu_counter_mod(&sbi->s_freeblocks_counter, count);
+  
+-Index: linux-2.6.18-53.1.14/fs/ext3/balloc.c
++Index: linux-source-2.6.18/fs/ext3/balloc.c
+ ===================================================================
+---- linux-2.6.18-53.1.14.orig/fs/ext3/balloc.c
+-+++ linux-2.6.18-53.1.14/fs/ext3/balloc.c
++--- linux-source-2.6.18.orig/fs/ext3/balloc.c 2009-08-13 10:36:03.000000000 
+0200
+++++ linux-source-2.6.18/fs/ext3/balloc.c      2009-08-13 10:36:33.000000000 
+0200
+ @@ -20,6 +20,7 @@
+  #include <linux/quotaops.h>
+  #include <linux/buffer_head.h>
+@@ -572,7 +572,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/balloc.c
+  /*
+   * balloc.c contains the blocks allocation and deallocation routines
+   */
+-@@ -73,6 +74,83 @@ struct ext3_group_desc * ext3_get_group_
++@@ -73,6 +74,83 @@
+       return desc + offset;
+  }
+  
+@@ -656,7 +656,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/balloc.c
+  /*
+   * Read the bitmap for a given block_group, reading into the specified 
+   * slot in the superblock's bitmap cache.
+-@@ -88,7 +166,19 @@ read_block_bitmap(struct super_block *sb
++@@ -88,7 +166,19 @@
+       desc = ext3_get_group_desc (sb, block_group, NULL);
+       if (!desc)
+               goto error_out;
+@@ -677,7 +677,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/balloc.c
+       if (!bh)
+               ext3_error (sb, "read_block_bitmap",
+                           "Cannot read block bitmap - "
+-@@ -467,6 +557,7 @@ do_more:
++@@ -467,6 +557,7 @@
+       desc->bg_free_blocks_count =
+               cpu_to_le16(le16_to_cpu(desc->bg_free_blocks_count) +
+                       group_freed);
+@@ -685,7 +685,7 @@ Index: linux-2.6.18-53.1.14/fs/ext3/balloc.c
+       spin_unlock(sb_bgl_lock(sbi, block_group));
+       percpu_counter_mod(&sbi->s_freeblocks_counter, count);
+  
+-@@ -1434,8 +1525,11 @@ allocated:
++@@ -1434,8 +1525,11 @@
+                       ret_block, goal_hits, goal_attempts);
+  
+       spin_lock(sb_bgl_lock(sbi, group_no));

-- 
Lustre Debian Packaging 

_______________________________________________
Pkg-lustre-svn-commit mailing list
Pkg-lustre-svn-commit@lists.alioth.debian.org
http://lists.alioth.debian.org/mailman/listinfo/pkg-lustre-svn-commit

Reply via email to