On Tue 16-08-11 18:08:06, Lukas Czerner wrote: > For a long time now orlov is the default block allocator in the ext3. It > performs better than the old one and no one seems to claim otherwise so > we can safely drop it and make oldalloc and orlov mount option > deprecated. > > Signed-off-by: Lukas Czerner <lczerner@xxxxxxxxxx> OK, merged into my tree. Honza > --- > Documentation/filesystems/ext3.txt | 8 ------ > fs/ext3/ialloc.c | 45 ++--------------------------------- > fs/ext3/super.c | 8 +++--- > include/linux/ext3_fs.h | 2 +- > 4 files changed, 8 insertions(+), 55 deletions(-) > > diff --git a/Documentation/filesystems/ext3.txt b/Documentation/filesystems/ext3.txt > index 22f3a0e..b100adc 100644 > --- a/Documentation/filesystems/ext3.txt > +++ b/Documentation/filesystems/ext3.txt > @@ -73,14 +73,6 @@ nobarrier (*) This also requires an IO stack which can support > also be used to enable or disable barriers, for > consistency with other ext3 mount options. > > -orlov (*) This enables the new Orlov block allocator. It is > - enabled by default. > - > -oldalloc This disables the Orlov block allocator and enables > - the old block allocator. Orlov should have better > - performance - we'd like to get some feedback if it's > - the contrary for you. > - > user_xattr Enables Extended User Attributes. Additionally, you > need to have extended attribute support enabled in the > kernel configuration (CONFIG_EXT3_FS_XATTR). See the > diff --git a/fs/ext3/ialloc.c b/fs/ext3/ialloc.c > index bf09cbf..635bd8c 100644 > --- a/fs/ext3/ialloc.c > +++ b/fs/ext3/ialloc.c > @@ -178,42 +178,6 @@ error_return: > } > > /* > - * There are two policies for allocating an inode. If the new inode is > - * a directory, then a forward search is made for a block group with both > - * free space and a low directory-to-inode ratio; if that fails, then of > - * the groups with above-average free space, that group with the fewest > - * directories already is chosen. > - * > - * For other inodes, search forward from the parent directory\'s block > - * group to find a free inode. > - */ > -static int find_group_dir(struct super_block *sb, struct inode *parent) > -{ > - int ngroups = EXT3_SB(sb)->s_groups_count; > - unsigned int freei, avefreei; > - struct ext3_group_desc *desc, *best_desc = NULL; > - int group, best_group = -1; > - > - freei = percpu_counter_read_positive(&EXT3_SB(sb)->s_freeinodes_counter); > - avefreei = freei / ngroups; > - > - for (group = 0; group < ngroups; group++) { > - desc = ext3_get_group_desc (sb, group, NULL); > - if (!desc || !desc->bg_free_inodes_count) > - continue; > - if (le16_to_cpu(desc->bg_free_inodes_count) < avefreei) > - continue; > - if (!best_desc || > - (le16_to_cpu(desc->bg_free_blocks_count) > > - le16_to_cpu(best_desc->bg_free_blocks_count))) { > - best_group = group; > - best_desc = desc; > - } > - } > - return best_group; > -} > - > -/* > * Orlov's allocator for directories. > * > * We always try to spread first-level directories. > @@ -436,12 +400,9 @@ struct inode *ext3_new_inode(handle_t *handle, struct inode * dir, > > sbi = EXT3_SB(sb); > es = sbi->s_es; > - if (S_ISDIR(mode)) { > - if (test_opt (sb, OLDALLOC)) > - group = find_group_dir(sb, dir); > - else > - group = find_group_orlov(sb, dir); > - } else > + if (S_ISDIR(mode)) > + group = find_group_orlov(sb, dir); > + else > group = find_group_other(sb, dir); > > err = -ENOSPC; > diff --git a/fs/ext3/super.c b/fs/ext3/super.c > index 7beb69a..948b358 100644 > --- a/fs/ext3/super.c > +++ b/fs/ext3/super.c > @@ -652,8 +652,6 @@ static int ext3_show_options(struct seq_file *seq, struct vfsmount *vfs) > seq_puts(seq, ",nouid32"); > if (test_opt(sb, DEBUG)) > seq_puts(seq, ",debug"); > - if (test_opt(sb, OLDALLOC)) > - seq_puts(seq, ",oldalloc"); > #ifdef CONFIG_EXT3_FS_XATTR > if (test_opt(sb, XATTR_USER)) > seq_puts(seq, ",user_xattr"); > @@ -1049,10 +1047,12 @@ static int parse_options (char *options, struct super_block *sb, > set_opt (sbi->s_mount_opt, DEBUG); > break; > case Opt_oldalloc: > - set_opt (sbi->s_mount_opt, OLDALLOC); > + ext3_msg(sb, KERN_WARNING, > + "Ignoring deprecated oldalloc option"); > break; > case Opt_orlov: > - clear_opt (sbi->s_mount_opt, OLDALLOC); > + ext3_msg(sb, KERN_WARNING, > + "Ignoring deprecated orlov option"); > break; > #ifdef CONFIG_EXT3_FS_XATTR > case Opt_user_xattr: > diff --git a/include/linux/ext3_fs.h b/include/linux/ext3_fs.h > index 67a803a..96a30b9 100644 > --- a/include/linux/ext3_fs.h > +++ b/include/linux/ext3_fs.h > @@ -381,7 +381,7 @@ struct ext3_inode { > * Mount flags > */ > #define EXT3_MOUNT_CHECK 0x00001 /* Do mount-time checks */ > -#define EXT3_MOUNT_OLDALLOC 0x00002 /* Don't use the new Orlov allocator */ > +/* EXT3_MOUNT_OLDALLOC was there */ > #define EXT3_MOUNT_GRPID 0x00004 /* Create files with directory's group */ > #define EXT3_MOUNT_DEBUG 0x00008 /* Some debugging messages */ > #define EXT3_MOUNT_ERRORS_CONT 0x00010 /* Continue on errors */ > -- > 1.7.4.4 > -- Jan Kara <jack@xxxxxxx> SUSE Labs, CR -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html