lkml.org 
[lkml]   [2014]   [Feb]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Date
    Subject[PATCH 3.2 35/79] ext2: Fix oops in ext2_get_block() called from ext2_quota_write()
    3.2.55-rc1 review patch.  If anyone has any objections, please let me know.

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

    From: Jan Kara <jack@suse.cz>

    commit df4e7ac0bb70abc97fbfd9ef09671fc084b3f9db upstream.

    ext2_quota_write() doesn't properly setup bh it passes to
    ext2_get_block() and thus we hit assertion BUG_ON(maxblocks == 0) in
    ext2_get_blocks() (or we could actually ask for mapping arbitrary number
    of blocks depending on whatever value was on stack).

    Fix ext2_quota_write() to properly fill in number of blocks to map.

    Reviewed-by: "Theodore Ts'o" <tytso@mit.edu>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reported-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Jan Kara <jack@suse.cz>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
    ---
    fs/ext2/super.c | 1 +
    1 file changed, 1 insertion(+)

    --- a/fs/ext2/super.c
    +++ b/fs/ext2/super.c
    @@ -1448,6 +1448,7 @@ static ssize_t ext2_quota_write(struct s
    sb->s_blocksize - offset : towrite;

    tmp_bh.b_state = 0;
    + tmp_bh.b_size = sb->s_blocksize;
    err = ext2_get_block(inode, blk, &tmp_bh, 1);
    if (err < 0)
    goto out;


    \
     
     \ /
      Last update: 2014-02-15 04:41    [W:4.717 / U:0.140 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site