From b4a94629f7b7aa49d29708d01e00266e0b3a78bb Mon Sep 17 00:00:00 2001 From: johann Date: Fri, 5 Dec 2008 15:13:38 +0000 Subject: [PATCH] Branch b1_8_gate b=17490 i=bzzz i=kalpak correctly handle device paths using a subdirectory in /dev when creating the per-device procfs directory under /proc/fs/ldiskfs. --- .../patches/ext3-max-dir-size-2.6.5-suse.patch | 42 +++++++++++----------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/ldiskfs/kernel_patches/patches/ext3-max-dir-size-2.6.5-suse.patch b/ldiskfs/kernel_patches/patches/ext3-max-dir-size-2.6.5-suse.patch index 7ef5914..3cc8b31 100644 --- a/ldiskfs/kernel_patches/patches/ext3-max-dir-size-2.6.5-suse.patch +++ b/ldiskfs/kernel_patches/patches/ext3-max-dir-size-2.6.5-suse.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.5-7.312/fs/ext3/ialloc.c +Index: linux-2.6.5-7.314/fs/ext3/ialloc.c =================================================================== ---- linux-2.6.5-7.312.orig/fs/ext3/ialloc.c -+++ linux-2.6.5-7.312/fs/ext3/ialloc.c +--- linux-2.6.5-7.314.orig/fs/ext3/ialloc.c ++++ linux-2.6.5-7.314/fs/ext3/ialloc.c @@ -520,12 +520,15 @@ struct inode *ext3_new_inode(handle_t *h return ERR_PTR(-EPERM); @@ -19,10 +19,10 @@ Index: linux-2.6.5-7.312/fs/ext3/ialloc.c es = sbi->s_es; if (goal) { group = (goal - 1) / EXT3_INODES_PER_GROUP(sb); -Index: linux-2.6.5-7.312/fs/ext3/super.c +Index: linux-2.6.5-7.314/fs/ext3/super.c =================================================================== ---- linux-2.6.5-7.312.orig/fs/ext3/super.c -+++ linux-2.6.5-7.312/fs/ext3/super.c +--- linux-2.6.5-7.314.orig/fs/ext3/super.c ++++ linux-2.6.5-7.314/fs/ext3/super.c @@ -37,6 +37,12 @@ #include "acl.h" #include "group.h" @@ -40,11 +40,11 @@ Index: linux-2.6.5-7.312/fs/ext3/super.c invalidate_bdev(sbi->journal_bdev, 0); ext3_blkdev_remove(sbi); } -+ remove_proc_entry(EXT3_MAX_DIR_SIZE_NAME, sbi->s_dev_proc); - remove_proc_entry(sb->s_id, proc_root_ext3); - sbi->s_dev_proc = NULL; - sb->s_fs_info = NULL; -@@ -1251,6 +1258,45 @@ static unsigned long descriptor_loc(stru ++ remove_proc_entry(EXT3_MAX_DIR_SIZE_NAME, sbi->s_dev_proc); + if (sbi->s_dev_proc) { + remove_proc_entry(sbi->s_dev_proc->name, proc_root_ext3); + sbi->s_dev_proc = NULL; +@@ -1253,6 +1260,45 @@ static unsigned long descriptor_loc(stru return (first_data_block + has_super + (bg * sbi->s_blocks_per_group)); } @@ -90,7 +90,7 @@ Index: linux-2.6.5-7.312/fs/ext3/super.c static int ext3_fill_super (struct super_block *sb, void *data, int silent) { -@@ -1270,6 +1316,7 @@ static int ext3_fill_super (struct super +@@ -1273,6 +1319,7 @@ static int ext3_fill_super (struct super int db_count; int i; int needs_recovery; @@ -98,8 +98,8 @@ Index: linux-2.6.5-7.312/fs/ext3/super.c sbi = kmalloc(sizeof(*sbi), GFP_KERNEL); if (!sbi) -@@ -1287,6 +1334,23 @@ static int ext3_fill_super (struct super - return -ENOMEM; +@@ -1299,6 +1346,23 @@ static int ext3_fill_super (struct super + sb->s_id); } + sbi->s_max_dir_size = EXT3_DEFAULT_MAX_DIR_SIZE; @@ -122,18 +122,18 @@ Index: linux-2.6.5-7.312/fs/ext3/super.c blocksize = sb_min_blocksize(sb, EXT3_MIN_BLOCK_SIZE); if (!blocksize) { printk(KERN_ERR "EXT3-fs: unable to set blocksize\n"); -@@ -1701,6 +1765,7 @@ failed_mount: +@@ -1713,6 +1777,7 @@ failed_mount: ext3_blkdev_remove(sbi); brelse(bh); out_fail: + remove_proc_entry(EXT3_MAX_DIR_SIZE_NAME, sbi->s_dev_proc); - remove_proc_entry(sb->s_id, proc_root_ext3); - sbi->s_dev_proc = NULL; - sb->s_fs_info = NULL; -Index: linux-2.6.5-7.312/include/linux/ext3_fs_sb.h + if (sbi->s_dev_proc) { + remove_proc_entry(sbi->s_dev_proc->name, proc_root_ext3); + sbi->s_dev_proc = NULL; +Index: linux-2.6.5-7.314/include/linux/ext3_fs_sb.h =================================================================== ---- linux-2.6.5-7.312.orig/include/linux/ext3_fs_sb.h -+++ linux-2.6.5-7.312/include/linux/ext3_fs_sb.h +--- linux-2.6.5-7.314.orig/include/linux/ext3_fs_sb.h ++++ linux-2.6.5-7.314/include/linux/ext3_fs_sb.h @@ -119,6 +119,8 @@ struct ext3_sb_info { unsigned long s_mb_last_group; unsigned long s_mb_last_start; -- 1.8.3.1