lkml.org 
[lkml]   [2019]   [Feb]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Date
    Subject[PATCH 3.16 155/305] ext4: fix possible leak of sbi->s_group_desc_leak in error path
    3.16.63-rc1 review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Theodore Ts'o <tytso@mit.edu>

    commit 9e463084cdb22e0b56b2dfbc50461020409a5fd3 upstream.

    Fixes: bfe0a5f47ada ("ext4: add more mount time checks of the superblock")
    Reported-by: Vasily Averin <vvs@virtuozzo.com>
    Signed-off-by: Theodore Ts'o <tytso@mit.edu>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
    ---
    fs/ext4/super.c | 16 ++++++++--------
    1 file changed, 8 insertions(+), 8 deletions(-)

    --- a/fs/ext4/super.c
    +++ b/fs/ext4/super.c
    @@ -3980,6 +3980,14 @@ static int ext4_fill_super(struct super_
    sbi->s_groups_count = blocks_count;
    sbi->s_blockfile_groups = min_t(ext4_group_t, sbi->s_groups_count,
    (EXT4_MAX_BLOCK_FILE_PHYS / EXT4_BLOCKS_PER_GROUP(sb)));
    + if (((u64)sbi->s_groups_count * sbi->s_inodes_per_group) !=
    + le32_to_cpu(es->s_inodes_count)) {
    + ext4_msg(sb, KERN_ERR, "inodes count not valid: %u vs %llu",
    + le32_to_cpu(es->s_inodes_count),
    + ((u64)sbi->s_groups_count * sbi->s_inodes_per_group));
    + ret = -EINVAL;
    + goto failed_mount;
    + }
    db_count = (sbi->s_groups_count + EXT4_DESC_PER_BLOCK(sb) - 1) /
    EXT4_DESC_PER_BLOCK(sb);
    if (EXT4_HAS_INCOMPAT_FEATURE(sb,EXT4_FEATURE_INCOMPAT_META_BG)) {
    @@ -3999,14 +4007,6 @@ static int ext4_fill_super(struct super_
    ret = -ENOMEM;
    goto failed_mount;
    }
    - if (((u64)sbi->s_groups_count * sbi->s_inodes_per_group) !=
    - le32_to_cpu(es->s_inodes_count)) {
    - ext4_msg(sb, KERN_ERR, "inodes count not valid: %u vs %llu",
    - le32_to_cpu(es->s_inodes_count),
    - ((u64)sbi->s_groups_count * sbi->s_inodes_per_group));
    - ret = -EINVAL;
    - goto failed_mount;
    - }

    if (ext4_proc_root)
    sbi->s_proc = proc_mkdir(sb->s_id, ext4_proc_root);
    \
     
     \ /
      Last update: 2019-02-03 15:02    [W:4.232 / U:0.072 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site